Преглед на файлове

test(oracle): fix broken test

I'm not sure how this test ever passed.

It directly called the resource manager (v2 API) to do the _resource_ (connector) health check,
but expected the connector to be connecting/disconnected.  Missing table only affects the
action state, not the connector's.
Thales Macedo Garitezi преди 1 година
родител
ревизия
26c1f1e503
променени са 1 файла, в които са добавени 10 реда и са изтрити 7 реда
  1. 10 7
      apps/emqx_bridge_oracle/test/emqx_bridge_oracle_SUITE.erl

+ 10 - 7
apps/emqx_bridge_oracle/test/emqx_bridge_oracle_SUITE.erl

@@ -127,6 +127,8 @@ common_init_per_testcase(TestCase, Config0) ->
     ),
     ),
     ok = snabbkaffe:start_trace(),
     ok = snabbkaffe:start_trace(),
     [
     [
+        {bridge_type, ?BRIDGE_TYPE_BIN},
+        {bridge_name, Name},
         {oracle_name, Name},
         {oracle_name, Name},
         {oracle_config_string, ConfigString},
         {oracle_config_string, ConfigString},
         {oracle_config, OracleConfig}
         {oracle_config, OracleConfig}
@@ -730,18 +732,20 @@ t_no_sid_nor_service_name(Config0) ->
     ok.
     ok.
 
 
 t_missing_table(Config) ->
 t_missing_table(Config) ->
-    ResourceId = resource_id(Config),
+    Name = ?config(bridge_name, Config),
     ?check_trace(
     ?check_trace(
         begin
         begin
             drop_table_if_exists(Config),
             drop_table_if_exists(Config),
             ?assertMatch({ok, _}, create_bridge_api(Config)),
             ?assertMatch({ok, _}, create_bridge_api(Config)),
-            ActionId = emqx_bridge_v2:id(?BRIDGE_TYPE_BIN, ?config(oracle_name, Config)),
             ?retry(
             ?retry(
                 _Sleep = 1_000,
                 _Sleep = 1_000,
                 _Attempts = 20,
                 _Attempts = 20,
                 ?assertMatch(
                 ?assertMatch(
-                    {ok, Status} when Status =:= disconnected orelse Status =:= connecting,
-                    emqx_resource_manager:health_check(ResourceId)
+                    {ok, #{
+                        <<"status">> := <<"disconnected">>,
+                        <<"status_reason">> := <<"{unhealthy_target,", _/binary>>
+                    }},
+                    emqx_bridge_testlib:get_bridge_api(Config)
                 )
                 )
             ),
             ),
             ?block_until(#{?snk_kind := oracle_undefined_table}),
             ?block_until(#{?snk_kind := oracle_undefined_table}),
@@ -752,10 +756,9 @@ t_missing_table(Config) ->
                 payload => ?config(oracle_name, Config),
                 payload => ?config(oracle_name, Config),
                 retain => true
                 retain => true
             },
             },
-            Message = {ActionId, Params},
             ?assertMatch(
             ?assertMatch(
-                {error, {resource_error, #{reason := not_connected}}},
-                emqx_resource:simple_sync_query(ResourceId, Message)
+                {error, {resource_error, #{reason := unhealthy_target}}},
+                emqx_bridge_v2:send_message(?BRIDGE_TYPE_BIN, Name, Params, _QueryOpts = #{})
             ),
             ),
             ok
             ok
         end,
         end,