chanko_ab 0.2.2 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4da6b8221739fa01ce545e06561a0f4d8da64142896f290f246a057cc286ce80
4
- data.tar.gz: 22e0d625185e2fab0f5091e0157e2c38e9a51e424bb49f6187b53407bbdd8d56
3
+ metadata.gz: 669ae5ace4fc737c1712ff414847634c912c82148ef545286ea989e6be4984a0
4
+ data.tar.gz: 6b64b0e029598252785701d324c006e29793e430261a1df250a901ae5f49d9d1
5
5
  SHA512:
6
- metadata.gz: 93aafbb58dfeaa2435620339488da38ff223e85ef42b564136533668d8d9636f3d2681f2b2ab4f8153a042288c40015ad2746ada6cf859f6c99282c30a4ab9d9
7
- data.tar.gz: 95f6acdb67c2d1bbb2b9de6419838c271509f1c9310e340fa14d3817324ceb434481d861c6bd9b8e1c9301ae67572bd2757f6e8508381279450c3ac46e088739
6
+ metadata.gz: ca89fbde6694dc77c8df037196496a58a81a915b0db22976d20fb8d09ce2ed82affd391d488cfe7538908b0839a6c9a0f89ab2c5b14f7639fedd13c4c9e8a448
7
+ data.tar.gz: 37fa07a8175de2913f99de64968fa51cfa0491712c585a8bcd0384bdf2c1592f2790a48118bfe6a9b3545a2149cada1a0c14af4d8c574660633d342e7deb2b15
data/CHANGELOG.md CHANGED
@@ -1,4 +1,10 @@
1
1
  # Change Log
2
+ ## [0.3.3] (2022-09-07)
3
+ ### Added
4
+ - Support for selectable identifier for each experiment.
5
+ ### Changed
6
+ - ChankoAb.set_identifier has been renamed renamed to ChankoAb.set_default_identifier
7
+
2
8
  ## [0.2.2] (2022-09-07)
3
9
  ### Fixed
4
10
  - Fix codes for tests
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- chanko_ab (0.2.1)
4
+ chanko_ab (0.2.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -24,7 +24,7 @@ ChankoAb.set_logging do |name|
24
24
  Rails.logger.debug(name)
25
25
  end
26
26
 
27
- ChankoAb.set_identifier do
27
+ ChankoAb.set_default_identifier do
28
28
  cookies[:identifier]
29
29
  end
30
30
  ```
@@ -53,6 +53,15 @@ module MySplitTest
53
53
  end
54
54
  ```
55
55
 
56
+ ### Switch using identifier
57
+ ```ruby
58
+ module MySplitTest
59
+ ...
60
+ split_test.identifier { cookies[:unique_id] }
61
+ ...
62
+ end
63
+ ```
64
+
56
65
  ### Use HexIdentifier if identifier is composed by hex.
57
66
  ```ruby
58
67
  module HexMySplitTest
@@ -23,6 +23,18 @@ module ChankoAb
23
23
  @unit
24
24
  end
25
25
 
26
+ def identifier(&block)
27
+ @identifier_proc = block
28
+ end
29
+
30
+ def identifier_proc
31
+ @identifier_proc
32
+ end
33
+
34
+ def reset_identifier
35
+ @identifier_proc = nil
36
+ end
37
+
26
38
  def logic(logic)
27
39
  @logic = logic
28
40
  end
@@ -85,7 +97,11 @@ module ChankoAb
85
97
  end
86
98
 
87
99
  shared(:identifier) do
88
- self.instance_eval(&ChankoAb.identifier_proc)
100
+ self.instance_eval(&identifier_proc)
101
+ end
102
+
103
+ shared(:identifier_proc) do
104
+ __split_test__.identifier_proc || ChankoAb.default_identifier_proc
89
105
  end
90
106
  end
91
107
  end
@@ -1,3 +1,3 @@
1
1
  module ChankoAb
2
- VERSION = "0.2.2"
2
+ VERSION = "0.3.0"
3
3
  end
data/lib/chanko_ab.rb CHANGED
@@ -28,12 +28,12 @@ module ChankoAb
28
28
  @logging_proc = block
29
29
  end
30
30
 
31
- def self.set_identifier(&block)
32
- @identifier_proc = block
31
+ def self.set_default_identifier(&block)
32
+ @default_identifier_proc = block
33
33
  end
34
34
 
35
- def self.identifier_proc
36
- @identifier_proc
35
+ def self.default_identifier_proc
36
+ @default_identifier_proc
37
37
  end
38
38
 
39
39
  def self.default_logic
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chanko_ab
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - morita shingo