molasses 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: []