molasses 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/molasses.rb +20 -15
  3. metadata +17 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 65c1760e6753f23f0b5029971c67d0bd637ec58abe376d8a1a4f151eaa05bb3c
4
- data.tar.gz: d1c94afb5eb0be2190b7898599375aa9395a0b986d0c3281e497b9243dfed927
3
+ metadata.gz: d2d9cea9373b20e0129025da3220b21b5b8e5146ed35e6acabc972657d8d1259
4
+ data.tar.gz: 78b3cb5ba295d6d1686f943933bc7e6f7cfba12b4145612d92637957e1fd574e
5
5
  SHA512:
6
- metadata.gz: 88459445d1b41d504aba89102b05d602587fde046c79a92c305e80097da3601c97fae412c8c2f394a68324aaacc887ce43cd9b5361e0b4d6f93466f1cf917b2d
7
- data.tar.gz: 364dbb84b69da102d920599d2de04a4371a1e6935b9f8968bc2126b669a25b05294b5db4748f65f28650ad1307717732c4b699ced27ab41a86b7f7f9018f2ef7
6
+ metadata.gz: af49bc877c10a7896e680f0b09dbc9364219b37a5a1ebbe80948ff66d5fe825901f19b23bb9af5df27578bd77de28f0c70648e734421d57f265d2539ee40927b
7
+ data.tar.gz: e0a8843a3802340adbbee06369eb901de8d802aa44c0d06cffd5f01a8c92f0e39c7558174bfba7eb7adb522dd55919895acee176ddf918157dbff3cce4ca6848
@@ -51,6 +51,25 @@ module Molasses
51
51
  end
52
52
  end
53
53
 
54
+ def stop
55
+ @timer.cancel
56
+ end
57
+
58
+ def experiment_success(key, additional_details={}, user=nil)
59
+ if !@initialized || !@send_events || user == nil || user.include?("id")
60
+ return false
61
+ end
62
+ feature = @feature_cache[key]
63
+ result = is_active(feature, user)
64
+ send_event({
65
+ "event"=> "experiment_success",
66
+ "tags"=> user["params"].merge(additional_details),
67
+ "userId"=> user["id"],
68
+ "featureId"=> feature["id"],
69
+ "featureName"=> key,
70
+ "testType"=> result ? "experiment" : "control"
71
+ })
72
+ end
54
73
  private
55
74
 
56
75
  def user_active(feature, user)
@@ -143,21 +162,7 @@ module Molasses
143
162
  return false
144
163
  end
145
164
  end
146
- def experiment_success(key, additional_details={}, user=nil)
147
- if !@initialized || !@send_events || user == nil || user.include?("id")
148
- return false
149
- end
150
- feature = @feature_cache[key]
151
- result = is_active(feature, user)
152
- send_event({
153
- "event"=> "experiment_success",
154
- "tags"=> user["params"].merge(additional_details),
155
- "userId"=> user["id"],
156
- "featureId"=> feature["id"],
157
- "featureName"=> key,
158
- "testType"=> result ? "experiment" : "control"
159
- })
160
- end
165
+
161
166
  def send_event(event_options)
162
167
  @conn.post('analytics', event_options.to_json)
163
168
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: molasses
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Hrisho
@@ -14,16 +14,30 @@ dependencies:
14
14
  name: faraday
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: workers
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.6.1
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.6.1
27
41
  description: Ruby SDK for Molasses. Feature flags as a service
28
42
  email: james.hrisho@gmail.com
29
43
  executables: []