chanko_ab 0.2.2 → 0.3.0

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.
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