fix(test): update the testcases for emqx_mqtt_caps_SUITE
This commit is contained in:
parent
3aaf7041a6
commit
e4e7eb81e4
|
@ -231,7 +231,7 @@ t_chan_caps(_) ->
|
||||||
#{max_clientid_len := 65535,
|
#{max_clientid_len := 65535,
|
||||||
max_qos_allowed := 2,
|
max_qos_allowed := 2,
|
||||||
max_topic_alias := 65535,
|
max_topic_alias := 65535,
|
||||||
max_topic_levels := 0,
|
max_topic_levels := 65535,
|
||||||
retain_available := true,
|
retain_available := true,
|
||||||
shared_subscription := true,
|
shared_subscription := true,
|
||||||
subscription_identifiers := true,
|
subscription_identifiers := true,
|
||||||
|
@ -871,7 +871,7 @@ t_check_sub_acls(_) ->
|
||||||
t_enrich_connack_caps(_) ->
|
t_enrich_connack_caps(_) ->
|
||||||
ok = meck:new(emqx_mqtt_caps, [passthrough, no_history]),
|
ok = meck:new(emqx_mqtt_caps, [passthrough, no_history]),
|
||||||
ok = meck:expect(emqx_mqtt_caps, get_caps,
|
ok = meck:expect(emqx_mqtt_caps, get_caps,
|
||||||
fun(_Zone) ->
|
fun(_Zone, _Listener) ->
|
||||||
#{max_packet_size => 1024,
|
#{max_packet_size => 1024,
|
||||||
max_qos_allowed => ?QOS_2,
|
max_qos_allowed => ?QOS_2,
|
||||||
retain_available => true,
|
retain_available => true,
|
||||||
|
|
|
@ -25,39 +25,36 @@
|
||||||
all() -> emqx_ct:all(?MODULE).
|
all() -> emqx_ct:all(?MODULE).
|
||||||
|
|
||||||
t_check_pub(_) ->
|
t_check_pub(_) ->
|
||||||
PubCaps = #{max_qos_allowed => ?QOS_1,
|
OldConf = emqx_config:get(),
|
||||||
retain_available => false
|
emqx_config:put_listener_conf(default, mqtt_tcp, [mqtt, max_qos_allowed], ?QOS_1),
|
||||||
},
|
emqx_config:put_listener_conf(default, mqtt_tcp, [mqtt, retain_available], false),
|
||||||
emqx_zone:set_env(zone, '$mqtt_pub_caps', PubCaps),
|
|
||||||
timer:sleep(50),
|
timer:sleep(50),
|
||||||
ok = emqx_mqtt_caps:check_pub(zone, #{qos => ?QOS_1,
|
ok = emqx_mqtt_caps:check_pub(default, mqtt_tcp, #{qos => ?QOS_1, retain => false}),
|
||||||
retain => false}),
|
|
||||||
PubFlags1 = #{qos => ?QOS_2, retain => false},
|
PubFlags1 = #{qos => ?QOS_2, retain => false},
|
||||||
?assertEqual({error, ?RC_QOS_NOT_SUPPORTED},
|
?assertEqual({error, ?RC_QOS_NOT_SUPPORTED},
|
||||||
emqx_mqtt_caps:check_pub(zone, PubFlags1)),
|
emqx_mqtt_caps:check_pub(default, mqtt_tcp, PubFlags1)),
|
||||||
PubFlags2 = #{qos => ?QOS_1, retain => true},
|
PubFlags2 = #{qos => ?QOS_1, retain => true},
|
||||||
?assertEqual({error, ?RC_RETAIN_NOT_SUPPORTED},
|
?assertEqual({error, ?RC_RETAIN_NOT_SUPPORTED},
|
||||||
emqx_mqtt_caps:check_pub(zone, PubFlags2)),
|
emqx_mqtt_caps:check_pub(default, mqtt_tcp, PubFlags2)),
|
||||||
emqx_zone:unset_env(zone, '$mqtt_pub_caps').
|
emqx_config:put(OldConf).
|
||||||
|
|
||||||
t_check_sub(_) ->
|
t_check_sub(_) ->
|
||||||
|
OldConf = emqx_config:get(),
|
||||||
SubOpts = #{rh => 0,
|
SubOpts = #{rh => 0,
|
||||||
rap => 0,
|
rap => 0,
|
||||||
nl => 0,
|
nl => 0,
|
||||||
qos => ?QOS_2
|
qos => ?QOS_2
|
||||||
},
|
},
|
||||||
SubCaps = #{max_topic_levels => 2,
|
emqx_config:put_listener_conf(default, mqtt_tcp, [mqtt, max_topic_levels], 2),
|
||||||
max_qos_allowed => ?QOS_2,
|
emqx_config:put_listener_conf(default, mqtt_tcp, [mqtt, max_qos_allowed], ?QOS_1),
|
||||||
shared_subscription => false,
|
emqx_config:put_listener_conf(default, mqtt_tcp, [mqtt, shared_subscription], false),
|
||||||
wildcard_subscription => false
|
emqx_config:put_listener_conf(default, mqtt_tcp, [mqtt, wildcard_subscription], false),
|
||||||
},
|
|
||||||
emqx_zone:set_env(zone, '$mqtt_sub_caps', SubCaps),
|
|
||||||
timer:sleep(50),
|
timer:sleep(50),
|
||||||
ok = emqx_mqtt_caps:check_sub(zone, <<"topic">>, SubOpts),
|
ok = emqx_mqtt_caps:check_sub(default, mqtt_tcp, <<"topic">>, SubOpts),
|
||||||
?assertEqual({error, ?RC_TOPIC_FILTER_INVALID},
|
?assertEqual({error, ?RC_TOPIC_FILTER_INVALID},
|
||||||
emqx_mqtt_caps:check_sub(zone, <<"a/b/c/d">>, SubOpts)),
|
emqx_mqtt_caps:check_sub(default, mqtt_tcp, <<"a/b/c/d">>, SubOpts)),
|
||||||
?assertEqual({error, ?RC_WILDCARD_SUBSCRIPTIONS_NOT_SUPPORTED},
|
?assertEqual({error, ?RC_WILDCARD_SUBSCRIPTIONS_NOT_SUPPORTED},
|
||||||
emqx_mqtt_caps:check_sub(zone, <<"+/#">>, SubOpts)),
|
emqx_mqtt_caps:check_sub(default, mqtt_tcp, <<"+/#">>, SubOpts)),
|
||||||
?assertEqual({error, ?RC_SHARED_SUBSCRIPTIONS_NOT_SUPPORTED},
|
?assertEqual({error, ?RC_SHARED_SUBSCRIPTIONS_NOT_SUPPORTED},
|
||||||
emqx_mqtt_caps:check_sub(zone, <<"topic">>, SubOpts#{share => true})),
|
emqx_mqtt_caps:check_sub(default, mqtt_tcp, <<"topic">>, SubOpts#{share => true})),
|
||||||
emqx_zone:unset_env(zone, '$mqtt_pub_caps').
|
emqx_config:put(OldConf).
|
||||||
|
|
Loading…
Reference in New Issue