diff options
author | ChaosKid42 <christoph.scholz@gmail.com> | 2020-04-28 16:22:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-28 16:22:42 +0200 |
commit | abc3260e750348d01996598309b6701469f58863 (patch) | |
tree | 9f49191545f325a171ff069eb0a3b43fc31dfa3f /test/ejabberd_SUITE.erl | |
parent | Merge pull request #3235 from weiss/xep-0215 (diff) |
enable tests with mssql-backend (#3136)
Diffstat (limited to 'test/ejabberd_SUITE.erl')
-rw-r--r-- | test/ejabberd_SUITE.erl | 37 |
1 files changed, 34 insertions, 3 deletions
diff --git a/test/ejabberd_SUITE.erl b/test/ejabberd_SUITE.erl index e471823a..5942b002 100644 --- a/test/ejabberd_SUITE.erl +++ b/test/ejabberd_SUITE.erl @@ -77,11 +77,21 @@ init_per_group(Group, Config) -> do_init_per_group(Group, Config); Backends -> %% Skipped backends that were not explicitely enabled - case lists:member(Group, Backends) of - true -> + case Group of + mssql -> + case lists:member(odbc, Backends) of + true -> do_init_per_group(Group, Config); - false -> + false -> {skip, {disabled_backend, Group}} + end; + _ -> + case lists:member(Group, Backends) of + true -> + do_init_per_group(Group, Config); + false -> + {skip, {disabled_backend, Group}} + end end end end. @@ -104,6 +114,15 @@ do_init_per_group(mysql, Config) -> Err -> {skip, {mysql_not_available, Err}} end; +do_init_per_group(mssql, Config) -> + case catch ejabberd_sql:sql_query(?MSSQL_VHOST, [<<"select 1;">>]) of + {selected, _, _} -> + mod_muc:shutdown_rooms(?MSSQL_VHOST), + clear_sql_tables(mssql, ?config(base_dir, Config)), + set_opt(server, ?MSSQL_VHOST, Config); + Err -> + {skip, {mssql_not_available, Err}} + end; do_init_per_group(pgsql, Config) -> case catch ejabberd_sql:sql_query(?PGSQL_VHOST, [<<"select 1;">>]) of {selected, _, _} -> @@ -158,6 +177,8 @@ end_per_group(redis, _Config) -> ok; end_per_group(mysql, _Config) -> ok; +end_per_group(mssql, _Config) -> + ok; end_per_group(pgsql, _Config) -> ok; end_per_group(sqlite, _Config) -> @@ -486,6 +507,7 @@ groups() -> {mnesia, [sequence], db_tests(mnesia)}, {redis, [sequence], db_tests(redis)}, {mysql, [sequence], db_tests(mysql)}, + {mssql, [sequence], db_tests(mssql)}, {pgsql, [sequence], db_tests(pgsql)}, {sqlite, [sequence], db_tests(sqlite)}]. @@ -495,6 +517,7 @@ all() -> {group, mnesia}, {group, redis}, {group, mysql}, + {group, mssql}, {group, pgsql}, {group, sqlite}, {group, extauth}, @@ -1013,6 +1036,14 @@ clear_sql_tables(Type, BaseDir) -> "mysql.sql" end, {?MYSQL_VHOST, Path}; + mssql -> + Path = case ejabberd_sql:use_new_schema() of + true -> + "mssql.new.sql"; + false -> + "mssql.sql" + end, + {?MSSQL_VHOST, Path}; pgsql -> Path = case ejabberd_sql:use_new_schema() of true -> |