test(authz): api username fuzzy searching

This commit is contained in:
JimMoen 2022-03-07 18:52:49 +08:00
parent 42df68ab51
commit 7274d775cb
2 changed files with 24 additions and 8 deletions

View File

@ -182,13 +182,13 @@ t_list_users(_) ->
fun(U) -> {ok, _} = emqx_authn_mnesia:add_user(U, State) end,
Users),
#{data := [#{is_superuser := false,user_id := <<"u2">>},
#{is_superuser := false,user_id := <<"u1">>}],
#{data := [#{is_superuser := false,user_id := _},
#{is_superuser := false,user_id := _}],
meta := #{page := 1, limit := 2, count := 3}} = emqx_authn_mnesia:list_users(
#{<<"page">> => 1, <<"limit">> => 2},
State),
#{data := [#{is_superuser := false,user_id := <<"u3">>}],
#{data := [#{is_superuser := false,user_id := _}],
meta := #{page := 2, limit := 2, count := 3}} = emqx_authn_mnesia:list_users(
#{<<"page">> => 2, <<"limit">> => 2},
State),

View File

@ -76,21 +76,37 @@ t_api(_) ->
request( post
, uri(["authorization", "sources", "built-in-database", "username"])
, [?USERNAME_RULES_EXAMPLE]),
{ok, 200, Request1} =
request( get
, uri(["authorization", "sources", "built-in-database", "username"])
, []),
{ok, 200, Request2} =
request( get
, uri(["authorization", "sources", "built-in-database", "username", "user1"])
, []),
#{<<"data">> := [#{<<"username">> := <<"user1">>, <<"rules">> := Rules1}],
<<"meta">> := #{<<"count">> := 1,
<<"limit">> := 100,
<<"page">> := 1}} = jsx:decode(Request1),
#{<<"username">> := <<"user1">>, <<"rules">> := Rules1} = jsx:decode(Request2),
?assertEqual(3, length(Rules1)),
{ok, 200, Request1_1} =
request( get
, uri([ "authorization"
, "sources"
, "built-in-database"
, "username?page=1&limit=20&like_username=noexist"])
, []),
#{<<"data">> := [],
<<"meta">> := #{<<"count">> := 0,
<<"limit">> := 20,
<<"page">> := 1}} = jsx:decode(Request1_1),
{ok, 200, Request2} =
request( get
, uri(["authorization", "sources", "built-in-database", "username", "user1"])
, []),
#{<<"username">> := <<"user1">>, <<"rules">> := Rules1} = jsx:decode(Request2),
{ok, 204, _} =
request( put
, uri(["authorization", "sources", "built-in-database", "username", "user1"])