statsig-io / erlang-sdk

The statsig feature flagging and experimentation library for erlang/elixir
ISC License
5 stars 2 forks source link

Add polling for config spec changes #7

Closed tore-statsig closed 2 years ago

tore-statsig commented 2 years ago
rebar3 shell

application:set_env(statsig, statsig_api_key, "SERVER_SECRET").

application:start(statsig).

application:ensure_all_started(statsig).

4> statsig:check_gate(#{<<"userID">> => "123"}, <<"always_on_gate">>).
true
5> statsig:check_gate(#{}, <<"always_on_gate">>).
true

...

toggled gate off in console

15> statsig:check_gate(#{}, <<"always_on_gate">>).
true
16> statsig:check_gate(#{}, <<"always_on_gate">>).
false
17> statsig:check_gate(#{}, <<"always_on_gate">>).
false
18> statsig:check_gate(#{<<"userID">> => "123"}, <<"always_on_gate">>).
false

toggled to userid 123 -> pass 0%, everyone pass 100%

26> statsig:check_gate(#{}, <<"always_on_gate">>).
false
27> statsig:check_gate(#{}, <<"always_on_gate">>).
true
28> statsig:check_gate(#{}, <<"always_on_gate">>).
true
29> statsig:check_gate(#{<<"userID">> => "123"}, <<"always_on_gate">>).
false
30> statsig:check_gate(#{<<"userID">> => "456"}, <<"always_on_gate">>).
true
31> statsig:check_gate(#{<<"userID">> => "123"}, <<"always_on_gate">>).
false
32> statsig:check_gate(#{<<"userID">> => "123"}, <<"always_on_gate">>).
false
33> statsig:check_gate(#{}, <<"always_on_gate">>).
true