molasses 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/molasses.rb +20 -15
- metadata +17 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d2d9cea9373b20e0129025da3220b21b5b8e5146ed35e6acabc972657d8d1259
|
4
|
+
data.tar.gz: 78b3cb5ba295d6d1686f943933bc7e6f7cfba12b4145612d92637957e1fd574e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: af49bc877c10a7896e680f0b09dbc9364219b37a5a1ebbe80948ff66d5fe825901f19b23bb9af5df27578bd77de28f0c70648e734421d57f265d2539ee40927b
|
7
|
+
data.tar.gz: e0a8843a3802340adbbee06369eb901de8d802aa44c0d06cffd5f01a8c92f0e39c7558174bfba7eb7adb522dd55919895acee176ddf918157dbff3cce4ca6848
|
data/lib/molasses.rb
CHANGED
@@ -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
|
-
|
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.
|
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: []
|