Advertisement
Guest User

Untitled

a guest
Oct 26th, 2016
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.78 KB | None | 0 0
  1. diff --git a/src/hydra_client.app.src b/src/hydra_client.app.src
  2. index 84b60b7..07f8c5f 100644
  3. --- a/src/hydra_client.app.src
  4. +++ b/src/hydra_client.app.src
  5. @@ -4,11 +4,12 @@
  6. {modules, []},
  7. {registered, []},
  8. {applications, [
  9. + gproc,
  10. + jsx,
  11. kernel,
  12. - stdlib,
  13. - turtle,
  14. msgpack,
  15. - jsx
  16. + stdlib,
  17. + turtle
  18. ]},
  19. {mod, {hydra_client_app, []}},
  20. {env, [
  21. diff --git a/src/hydra_client.erl b/src/hydra_client.erl
  22. index 0d29af3..91f04df 100644
  23. --- a/src/hydra_client.erl
  24. +++ b/src/hydra_client.erl
  25. @@ -40,6 +40,11 @@
  26. %% Debug API.
  27. -export([ping/1]).
  28.  
  29. +%% Connectivity API.
  30. +-export([await/0,
  31. + await/1
  32. + ]).
  33. +
  34. %% Private API.
  35. -export([call/2,
  36. format_object/1]).
  37. @@ -646,6 +651,22 @@ ping(Value) when is_binary(Value) ->
  38. Error
  39. end.
  40.  
  41. +%% @doc Wait until our connection to Hydra is established.
  42. +-spec await() -> ok.
  43. +await() ->
  44. + await(infinity).
  45. +
  46. +-spec await(Timeout) -> ok | timeout
  47. + when
  48. + Timeout :: non_neg_integer() | infinity.
  49. +await(Timeout) ->
  50. + try gproc:await({n,l,{turtle, publisher, hydra_client_rpc}}, Timeout) of
  51. + {_, _} ->
  52. + ok
  53. + catch _:_ ->
  54. + timeout
  55. + end.
  56. +
  57. %% @private
  58. -spec truncate(Secret) -> {ok, boolean()} | {error, term()}
  59. when
  60. diff --git a/test/hydra_client_SUITE.erl b/test/hydra_client_SUITE.erl
  61. index b6ce088..a390b1f 100644
  62. --- a/test/hydra_client_SUITE.erl
  63. +++ b/test/hydra_client_SUITE.erl
  64. @@ -42,7 +42,7 @@ init_per_group(Name, Config) ->
  65. case Name of
  66. hydra_client ->
  67. {ok, _} = application:ensure_all_started(hydra_client),
  68. - timer:sleep(500),
  69. + ok = hydra_client:await(500),
  70. [{client, Name} | Config];
  71.  
  72. hydra_client_test ->
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement