diff --git a/Makefile b/Makefile index 08e3c3dd0..aba0d4ac4 100644 --- a/Makefile +++ b/Makefile @@ -32,12 +32,12 @@ TEST_ERLC_OPTS += +'{parse_transform, lager_transform}' EUNIT_OPTS = verbose -# CT_SUITES = emqx_stats +# CT_SUITES = emqx_mqueue ## emqx_trie emqx_router emqx_frame emqx_mqtt_compat CT_SUITES = emqx emqx_connection emqx_session emqx_access emqx_base62 emqx_broker emqx_client emqx_cm emqx_frame emqx_guid emqx_inflight \ emqx_json emqx_keepalive emqx_lib emqx_metrics emqx_misc emqx_mod emqx_mqtt_caps \ - emqx_mqtt_compat emqx_mqtt_properties emqx_mqueue emqx_net emqx_pqueue emqx_router emqx_sm \ + emqx_mqtt_compat emqx_mqtt_properties emqx_mqueue emqx_message emqx_net emqx_pqueue emqx_router emqx_sm \ emqx_stats emqx_tables emqx_time emqx_topic emqx_trie emqx_vm emqx_zone emqx_mountpoint CT_OPTS = -cover test/ct.cover.spec -erl_args -name emqxct@127.0.0.1 diff --git a/test/emqx_message_SUITE.erl b/test/emqx_message_SUITE.erl index da39ef882..c2ca0f0aa 100644 --- a/test/emqx_message_SUITE.erl +++ b/test/emqx_message_SUITE.erl @@ -28,7 +28,8 @@ all() -> message_make, message_flag, message_header, - message_format + message_format, + message_expired ]. message_make(_) -> @@ -62,4 +63,16 @@ message_header(_) -> message_format(_) -> io:format("~s", [emqx_message:format(emqx_message:make(<<"clientid">>, <<"topic">>, <<"payload">>))]). +message_expired(_) -> + Msg = emqx_message:make(<<"clientid">>, <<"topic">>, <<"payload">>), + Msg1 = emqx_message:set_headers(#{'Message-Expiry-Interval' => 1}, Msg), + timer:sleep(500), + ?assertNot(emqx_message:is_expired(Msg1)), + {ok, 1} = emqx_message:check_expiry(Msg1), + timer:sleep(600), + ?assert(emqx_message:is_expired(Msg1)), + expired = emqx_message:check_expiry(Msg1), + timer:sleep(1000), + Msg2 = emqx_message:update_expiry(Msg1), + ?assertEqual(1, emqx_message:get_header('Message-Expiry-Interval', Msg2)). diff --git a/test/emqx_mqueue_SUITE.erl b/test/emqx_mqueue_SUITE.erl index 6a5893566..8a1ca5201 100644 --- a/test/emqx_mqueue_SUITE.erl +++ b/test/emqx_mqueue_SUITE.erl @@ -86,7 +86,7 @@ t_infinity_simple_mqueue(_) -> ?assertEqual(<<1>>, V#message.payload). t_priority_mqueue(_) -> - Opts = #{type => priority, max_len => 3, store_qos0 => false}, + Opts = #{type => priority, max_len => 3, priorities => [{<<"t1">>, 1}, {<<"t2">>, 2}, {<<"t3">>, 3}], store_qos0 => false}, Q = ?Q:init(Opts), ?assertEqual(priority, ?Q:type(Q)), ?assertEqual(3, ?Q:max_len(Q)), @@ -103,10 +103,10 @@ t_priority_mqueue(_) -> ?assertEqual(5, ?Q:len(Q6)), {{value, Msg}, Q7} = ?Q:out(Q6), ?assertEqual(4, ?Q:len(Q7)), - ?assertEqual(<<"t1">>, Msg#message.topic). + ?assertEqual(<<"t3">>, Msg#message.topic). t_infinity_priority_mqueue(_) -> - Opts = #{type => priority, max_len => 0, store_qos0 => false}, + Opts = #{type => priority, max_len => 0, priorities => [{<<"t">>, 1}, {<<"t1">>, 2}], store_qos0 => false}, Q = ?Q:init(Opts), ?assertEqual(0, ?Q:max_len(Q)), Qx = lists:foldl(fun(I, AccQ) ->