fix(emqx_authz_api_sources): return 'code' in response body for 404

This commit is contained in:
Stefan Strigler 2022-11-02 16:10:21 +01:00 committed by Zaiming (Stone) Shi
parent 073989834b
commit e0ed0855ff
2 changed files with 7 additions and 1 deletions

View File

@ -241,7 +241,7 @@ source(Method, #{bindings := #{type := Type} = Bindings} = Req) when
source(get, #{bindings := #{type := Type}}) ->
case get_raw_source(Type) of
[] ->
{404, #{message => <<"Not found ", Type/binary>>}};
{404, #{code => <<"NOT_FOUND">>, message => <<"Not found ", Type/binary>>}};
[#{<<"type">> := <<"file">>, <<"enable">> := Enable, <<"path">> := Path}] ->
case file:read_file(Path) of
{ok, Rules} ->

View File

@ -181,6 +181,12 @@ t_api(_) ->
{ok, 200, Result1} = request(get, uri(["authorization", "sources"]), []),
?assertEqual([], get_sources(Result1)),
{ok, 404, ErrResult} = request(get, uri(["authorization", "sources", "http"]), []),
?assertMatch(
#{<<"code">> := <<"NOT_FOUND">>, <<"message">> := <<"Not found http">>},
jsx:decode(ErrResult)
),
[
begin
{ok, 204, _} = request(post, uri(["authorization", "sources"]), Source)