add device_handler test
This commit is contained in:
parent
5d0f931d24
commit
0b42353ac0
@ -99,10 +99,10 @@ test(HostUUID, DeviceUUID) when is_binary(HostUUID), is_binary(DeviceUUID) ->
|
|||||||
lager:debug("[device_handler] host_id: ~p, will query_edge_status uuid: ~p", [HostUUID, DeviceUUID]),
|
lager:debug("[device_handler] host_id: ~p, will query_edge_status uuid: ~p", [HostUUID, DeviceUUID]),
|
||||||
case iot_host:get_pid(HostUUID) of
|
case iot_host:get_pid(HostUUID) of
|
||||||
undefined ->
|
undefined ->
|
||||||
{ok, 200, iot_util:json_error(404, <<"query_edge_status failed">>)};
|
{ok, <<"host not found">>};
|
||||||
HostPid when is_pid(HostPid) ->
|
HostPid when is_pid(HostPid) ->
|
||||||
Ref = make_ref(),
|
Ref = make_ref(),
|
||||||
{ok, {TaskPid, _}} = iot_device_poll_task:start_monitor(),
|
{ok, {TaskPid, MRef}} = iot_device_poll_task:start_monitor(),
|
||||||
iot_device_poll_task:poll_task(TaskPid, Ref, HostPid, self(), DeviceUUID, Timeout),
|
iot_device_poll_task:poll_task(TaskPid, Ref, HostPid, self(), DeviceUUID, Timeout),
|
||||||
receive
|
receive
|
||||||
{poll_task_reply, Ref, {ok, EdgeStatus}} ->
|
{poll_task_reply, Ref, {ok, EdgeStatus}} ->
|
||||||
@ -110,9 +110,10 @@ test(HostUUID, DeviceUUID) when is_binary(HostUUID), is_binary(DeviceUUID) ->
|
|||||||
{ok, 200, iot_util:json_data(#{<<"edge_status">> => EdgeStatus})};
|
{ok, 200, iot_util:json_data(#{<<"edge_status">> => EdgeStatus})};
|
||||||
{poll_task_reply, Ref, {error, Reason}} ->
|
{poll_task_reply, Ref, {error, Reason}} ->
|
||||||
lager:debug("[device_handler] query_edge_status device: ~p, get error: ~p", [DeviceUUID, Reason]),
|
lager:debug("[device_handler] query_edge_status device: ~p, get error: ~p", [DeviceUUID, Reason]),
|
||||||
{ok, 200, iot_util:json_error(404, <<"query_edge_status failed">>)}
|
{ok, 200, iot_util:json_error(404, <<"query_edge_status failed">>)};
|
||||||
|
{'DOWN', MRef, process, TaskPid, Reason} ->
|
||||||
|
{ok, <<"task pid down with reason:">>, Reason}
|
||||||
after Timeout * 1000 ->
|
after Timeout * 1000 ->
|
||||||
lager:debug("[device_handler] query_edge_status device: ~p, timeout", [DeviceUUID]),
|
{ok, 200, <<"query_edge_status timeout">>}
|
||||||
{ok, 200, iot_util:json_error(404, <<"query_edge_status timeout">>)}
|
|
||||||
end
|
end
|
||||||
end.
|
end.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user