trakio-ruby 0.1.3 → 0.1.4

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,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- Y2E5MmRiYzhhYTQ1N2NhNmU0YmQ2NDA4MzkwNzQyZWFlZjYxOTFmNA==
5
- data.tar.gz: !binary |-
6
- YzUzOWYwODc4OTA3MTAwY2Y4YzY3MzMyMzg3NmFhMzAzZTdjMzdlZg==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- N2M3MWUyOTRkMWU4ZjZkMDMwMzJkYjExMWYyYmIyYjI1N2FhZThlNGIzZmM1
10
- ODZjZmRkZGMwZjE5NzI1YzQ1OTVkZGM1YjgwNDNjN2M3ZGNlYTBiMDViZTY4
11
- NDlmOTg0MDUzZGY4OWVlZWJiYTFmMWEzOTc5ZmNlZTU3OWVjMDE=
12
- data.tar.gz: !binary |-
13
- MzY0Mzg3MjY4YTllMGE0ZGRjNTAyNjA5MzAzOTJmMmU4N2UxODkxZTQ4MDk0
14
- MDcxNWM3Y2I3MmZiZGVhNTlhYjJkOTA0M2E4MThhMGZiZDBmMjRlNDEyOTU3
15
- ZDUyYTFiYzBiNzc4NTNmNDA1OWZlZjY3NWZjNjFlYTljYjI3OGY=
2
+ SHA1:
3
+ metadata.gz: 2f0f9ac5b8ceaa20fd8a33d9f461a5e86c6be2ee
4
+ data.tar.gz: b8752c480a4f6283c43f4e814cabd24bdaddcf70
5
+ SHA512:
6
+ metadata.gz: 7f054a3bfde7856c73967229185e4be803e971c66fda25d3c6a48355268deb903478b666175c5f6dff31d017c76f8c99755d6b6fb3fc5b370660597ed47487fc
7
+ data.tar.gz: b7b930459be4683ba41b95f305de49d43c42c04dc90ef2a167ae820ff317ff03174ffff400b7ead85dce2d35e1fcf067c164f2abad785c14ee8905496ac4e314
@@ -0,0 +1 @@
1
+ require 'trakio'
data/lib/trakio.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require "trakio/version"
2
2
  require "rest_client"
3
3
  require "json"
4
+ require "date"
4
5
 
5
6
 
6
7
  class Trakio
@@ -78,10 +79,6 @@ class Trakio
78
79
  def track(parameters)
79
80
  parameters.default = nil
80
81
 
81
- distinct_id = parameters[:distinct_id]
82
- distinct_id = @distinct_id unless distinct_id
83
- raise "No distinct_id specified" unless distinct_id
84
-
85
82
  event = parameters[:event] or raise "No event specified"
86
83
 
87
84
  channel = parameters[:channel]
@@ -90,12 +87,14 @@ class Trakio
90
87
  properties = parameters[:properties]
91
88
 
92
89
  params = {
93
- distinct_id: distinct_id,
90
+ distinct_id: distinct_id_from_parameters(parameters),
94
91
  event: event,
95
92
  }
96
- if parameters[:time]
93
+ if parameters[:time] # if specified
97
94
  params[:time] = parameters[:time]
98
95
  params[:time] = params[:time].iso8601 unless params[:time].is_a? String
96
+ else # if nots specified default to now
97
+ params[:time] = DateTime.now.iso8601
99
98
  end
100
99
  params[:channel] = channel if channel
101
100
  params[:properties] = properties if properties
@@ -106,15 +105,11 @@ class Trakio
106
105
  def identify(parameters)
107
106
  parameters.default = nil
108
107
 
109
- distinct_id = parameters[:distinct_id]
110
- distinct_id = @distinct_id unless distinct_id
111
- raise "No distinct_id specified" unless distinct_id
112
-
113
108
  properties = parameters[:properties]
114
109
  raise "Properties must be specified" unless properties and properties.length > 0
115
110
 
116
111
  params = {
117
- distinct_id: distinct_id,
112
+ distinct_id: distinct_id_from_parameters(parameters),
118
113
  properties: properties,
119
114
  }
120
115
  send_request('identify', params)
@@ -123,16 +118,12 @@ class Trakio
123
118
  def alias(parameters)
124
119
  parameters.default = nil
125
120
 
126
- distinct_id = parameters[:distinct_id]
127
- distinct_id = @distinct_id unless distinct_id
128
- raise "No distinct_id specified" unless distinct_id
129
-
130
121
  alias_ = parameters[:alias]
131
122
  raise "No alias specified" unless alias_
132
123
  raise "alias must be string or array" unless alias_.is_a?(String) or alias_.is_a?(Array)
133
124
 
134
125
  params = {
135
- distinct_id: distinct_id,
126
+ distinct_id: distinct_id_from_parameters(parameters),
136
127
  alias: alias_,
137
128
  }
138
129
  send_request('alias', params)
@@ -164,7 +155,7 @@ class Trakio
164
155
  event: 'Page view'
165
156
  }
166
157
 
167
- distinct_id = parameters[:distinct_id]
158
+ distinct_id = distinct_id_from_parameters(parameters)
168
159
  args[:distinct_id] = distinct_id if distinct_id
169
160
 
170
161
  raise "Must specify URL" unless parameters.has_key?(:url)
@@ -227,4 +218,11 @@ class Trakio
227
218
  end
228
219
  end
229
220
 
221
+ def distinct_id_from_parameters parameters
222
+ distinct_id = parameters[:distinct_id]
223
+ distinct_id = @distinct_id unless distinct_id
224
+ raise "No distinct_id specified" unless distinct_id
225
+ distinct_id
226
+ end
227
+
230
228
  end
@@ -1,3 +1,3 @@
1
1
  class Trakio
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
data/spec/spec_helper.rb CHANGED
@@ -8,7 +8,7 @@ require 'active_support/core_ext/date/calculations'
8
8
 
9
9
  # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
10
10
  RSpec.configure do |config|
11
- config.treat_symbols_as_metadata_keys_with_true_values = true
11
+ config.raise_errors_for_deprecations!
12
12
  config.run_all_when_everything_filtered = true
13
13
 
14
14
  # Run specs in random order to surface order dependencies. If you find an
@@ -8,7 +8,7 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '.alias' do
11
+ describe '#alias' do
12
12
 
13
13
  context "when an array alias is provided" do
14
14
  it "sends an array" do
@@ -30,7 +30,7 @@ describe Trakio do
30
30
  trakio = Trakio.new 'my_api_token'
31
31
  trakio.alias distinct_id: 'user@example.com', alias: ['alias1@example.com']
32
32
 
33
- stub.should have_been_requested
33
+ expect(stub).to have_been_requested
34
34
  end
35
35
  end
36
36
 
@@ -52,7 +52,7 @@ describe Trakio do
52
52
  trakio = Trakio.new 'my_api_token'
53
53
  trakio.alias distinct_id: 'user@example.com', alias: 'alias1@example.com'
54
54
 
55
- stub.should have_been_requested
55
+ expect(stub).to have_been_requested
56
56
  end
57
57
  end
58
58
 
@@ -83,7 +83,7 @@ describe Trakio do
83
83
  trakio = Trakio.new 'my_api_token', distinct_id: 'user@example.com'
84
84
  trakio.alias alias: 'alias1@example.com'
85
85
 
86
- stub.should have_been_requested
86
+ expect(stub).to have_been_requested
87
87
  end
88
88
  end
89
89
 
@@ -97,4 +97,5 @@ describe Trakio do
97
97
  end
98
98
 
99
99
  end
100
+
100
101
  end
@@ -8,12 +8,12 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '.annotate' do
11
+ describe '#annotate' do
12
12
 
13
13
  context "when an event is provided" do
14
14
 
15
15
  context "when a channel is provided" do
16
- it "should send a request with the channel" do
16
+ it "sends a request with the channel" do
17
17
  stub = stub_request(:post, "https://api.trak.io/v1/annotate").
18
18
  with(:body => {
19
19
  token: 'my_api_token',
@@ -30,13 +30,13 @@ describe Trakio do
30
30
  trakio = Trakio.new 'my_api_token'
31
31
  trakio.annotate event: 'event', channel: 'channel'
32
32
 
33
- stub.should have_been_requested
33
+ expect(stub).to have_been_requested
34
34
  end
35
35
  end
36
36
 
37
37
  context "when a channel isnt provided" do
38
38
  context "when there is a channel set on the instance" do
39
- it "should send a request with the channel" do
39
+ it "sends a request with the channel" do
40
40
  stub = stub_request(:post, "https://api.trak.io/v1/annotate").
41
41
  with(:body => {
42
42
  token: 'my_api_token',
@@ -53,13 +53,13 @@ describe Trakio do
53
53
  trakio = Trakio.new 'my_api_token', channel: 'channel'
54
54
  trakio.annotate event: 'event'
55
55
 
56
- stub.should have_been_requested
56
+ expect(stub).to have_been_requested
57
57
  end
58
58
  end
59
59
  end
60
60
 
61
61
  context "when properties are provided" do
62
- it "should send a request with the properties" do
62
+ it "sends a request with the properties" do
63
63
  stub = stub_request(:post, "https://api.trak.io/v1/annotate").
64
64
  with(:body => {
65
65
  token: 'my_api_token',
@@ -77,12 +77,12 @@ describe Trakio do
77
77
  trakio = Trakio.new 'my_api_token'
78
78
  trakio.annotate event: 'event', properties: { details: 'details' }
79
79
 
80
- stub.should have_been_requested
80
+ expect(stub).to have_been_requested
81
81
  end
82
82
  end
83
83
 
84
84
  context "when properties are not provided" do
85
- it "should send a request with empty properties" do
85
+ it "sends a request with empty properties" do
86
86
  stub = stub_request(:post, "https://api.trak.io/v1/annotate").
87
87
  with(:body => {
88
88
  token: 'my_api_token',
@@ -98,7 +98,7 @@ describe Trakio do
98
98
  trakio = Trakio.new 'my_api_token'
99
99
  trakio.annotate event: 'event'
100
100
 
101
- stub.should have_been_requested
101
+ expect(stub).to have_been_requested
102
102
  end
103
103
  end
104
104
 
@@ -107,21 +107,21 @@ describe Trakio do
107
107
  context "when an event is not provided" do
108
108
 
109
109
  context "when a channel is provided" do
110
- it "should raise an error" do
110
+ it "raises an error" do
111
111
  trakio = Trakio.new 'my_api_token'
112
112
  expect { trakio.annotate channel: 'channel' }.to raise_error RuntimeError
113
113
  end
114
114
  end
115
115
 
116
116
  context "when properties are provided" do
117
- it "should raise an error" do
117
+ it "raises an error" do
118
118
  trakio = Trakio.new 'my_api_token'
119
119
  expect { trakio.annotate properties: { name: 'tobie' } }.to raise_error RuntimeError
120
120
  end
121
121
  end
122
122
 
123
123
  context "when no arguments are provided" do
124
- it "should raise an error" do
124
+ it "raises an error" do
125
125
  trakio = Trakio.new 'my_api_token'
126
126
  expect { trakio.annotate }.to raise_error ArgumentError
127
127
  end
@@ -8,7 +8,7 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '#default_instance' do
11
+ describe '.default_instance' do
12
12
 
13
13
  context "when a default instance hasn't been created" do
14
14
  it "raises an exception" do
@@ -25,7 +25,7 @@ describe Trakio do
25
25
 
26
26
  end
27
27
 
28
- describe '#init' do
28
+ describe '.init' do
29
29
 
30
30
  context "when an API token is provided" do
31
31
 
@@ -51,14 +51,14 @@ describe Trakio do
51
51
  context "when a https is provided" do
52
52
  it "sets https option" do
53
53
  Trakio.init 'my_api_token', https: false
54
- expect(Trakio.https).to be_false
54
+ expect(Trakio.https).to be false
55
55
  end
56
56
  end
57
57
 
58
58
  context "when a https isn't provided" do
59
59
  it "defaults to true" do
60
60
  Trakio.init 'my_api_token'
61
- expect(Trakio.https).to be_true
61
+ expect(Trakio.https).to be true
62
62
  end
63
63
  end
64
64
 
@@ -86,7 +86,7 @@ describe Trakio do
86
86
 
87
87
  end
88
88
 
89
- describe '#track' do
89
+ describe '.track' do
90
90
  it "calls track on the default Trakio instance" do
91
91
  default_instance = double(Trakio)
92
92
 
@@ -97,7 +97,7 @@ describe Trakio do
97
97
  end
98
98
  end
99
99
 
100
- describe '#identify' do
100
+ describe '.identify' do
101
101
  it "calls identify on the default Trakio instance" do
102
102
  default_instance = double(Trakio)
103
103
 
@@ -108,7 +108,7 @@ describe Trakio do
108
108
  end
109
109
  end
110
110
 
111
- describe '#alias' do
111
+ describe '.alias' do
112
112
  it "calls alias on the default Trakio instance" do
113
113
  default_instance = double(Trakio)
114
114
 
@@ -119,7 +119,7 @@ describe Trakio do
119
119
  end
120
120
  end
121
121
 
122
- describe '#annotate' do
122
+ describe '.annotate' do
123
123
 
124
124
  it "calls annotate on the default Trakio instance" do
125
125
  default_instance = double(Trakio)
@@ -132,7 +132,7 @@ describe Trakio do
132
132
 
133
133
  end
134
134
 
135
- describe '#page_view' do
135
+ describe '.page_view' do
136
136
 
137
137
  it "calls page_view on the default Trakio instance" do
138
138
  default_instance = double(Trakio)
@@ -146,13 +146,13 @@ describe Trakio do
146
146
  end
147
147
 
148
148
 
149
- describe '#distinct_id' do
149
+ describe '.distinct_id' do
150
150
  it "raise an error" do
151
151
  expect{ Trakio.distinct_id }.to raise_error Trakio::Exceptions::NoDistinctIdForDefaultInstance
152
152
  end
153
153
  end
154
154
 
155
- describe '#channel' do
155
+ describe '.channel' do
156
156
 
157
157
  it "calls channel on the default Trakio instance" do
158
158
  default_instance = double(Trakio)
@@ -8,7 +8,7 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '.track' do
11
+ describe '#track' do
12
12
 
13
13
  context "when an error is returned by the API" do
14
14
  it "raises an exception" do
@@ -16,6 +16,7 @@ describe Trakio do
16
16
  with(:body => {
17
17
  token: 'my_api_token',
18
18
  data: {
19
+ time: /.+/,
19
20
  distinct_id: 'user@example.com',
20
21
  event: 'my-event'
21
22
  }
@@ -32,7 +33,7 @@ describe Trakio do
32
33
  trakio.track distinct_id: 'user@example.com', event: 'my-event'
33
34
  }.to raise_error Trakio::Exceptions::InvalidToken
34
35
 
35
- stub.should have_been_requested
36
+ expect(stub).to have_been_requested
36
37
 
37
38
  end
38
39
  end
@@ -43,6 +44,7 @@ describe Trakio do
43
44
  with(:body => {
44
45
  token: 'my_api_token',
45
46
  data: {
47
+ time: /.+/,
46
48
  distinct_id: 'user@example.com',
47
49
  event: 'my-event'
48
50
  }
@@ -57,9 +59,10 @@ describe Trakio do
57
59
  expect(resp[:status]).to eql 'success'
58
60
  expect(resp[:trak_id]).to eql '1234567890'
59
61
 
60
- stub.should have_been_requested
62
+ expect(stub).to have_been_requested
61
63
  end
62
64
  end
63
65
 
64
- end # end .track
66
+ end
67
+
65
68
  end
@@ -8,7 +8,7 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '.identify' do
11
+ describe '#identify' do
12
12
 
13
13
  context "when a distinct_id is provided" do
14
14
  context "when properties are provided" do
@@ -31,7 +31,7 @@ describe Trakio do
31
31
  trakio = Trakio.new 'my_api_token'
32
32
  trakio.identify distinct_id: 'user@example.com', properties: { name: 'Tobie' }
33
33
 
34
- stub.should have_been_requested
34
+ expect(stub).to have_been_requested
35
35
  end
36
36
  end
37
37
  end
@@ -57,7 +57,7 @@ describe Trakio do
57
57
  trakio = Trakio.new 'my_api_token', distinct_id: 'user@example.com'
58
58
  trakio.identify properties: { name: 'Tobie' }
59
59
 
60
- stub.should have_been_requested
60
+ expect(stub).to have_been_requested
61
61
  end
62
62
  end
63
63
  end
@@ -8,7 +8,7 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '.initialize' do
11
+ describe '#initialize' do
12
12
 
13
13
  context "when an API token is provided" do
14
14
 
@@ -39,14 +39,14 @@ describe Trakio do
39
39
  context "when a https option is provided" do
40
40
  it "sets https option" do
41
41
  trakio = Trakio.new 'my_api_token', https: false
42
- expect(trakio.https).to be_false
42
+ expect(trakio.https).to be false
43
43
  end
44
44
  end
45
45
 
46
46
  context "when a https option isn't provided" do
47
47
  it "defaults to true" do
48
48
  trakio = Trakio.new 'my_api_token'
49
- expect(trakio.https).to be_true
49
+ expect(trakio.https).to be true
50
50
  end
51
51
  end
52
52
 
@@ -8,7 +8,7 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '.distinct_id=' do
11
+ describe '#distinct_id=' do
12
12
 
13
13
  it "sets the distinct_id to be used by this Interface" do
14
14
  trakio = Trakio.new 'api_token'
@@ -27,7 +27,7 @@ describe Trakio do
27
27
 
28
28
  end
29
29
 
30
- describe '.distinct_id' do
30
+ describe '#distinct_id' do
31
31
 
32
32
  it "returns the current value" do
33
33
  trakio = Trakio.new 'api_token'
@@ -37,7 +37,7 @@ describe Trakio do
37
37
 
38
38
  end
39
39
 
40
- describe '.channel=' do
40
+ describe '#channel=' do
41
41
 
42
42
  it "sets the channel to be used by this Interface" do
43
43
  trakio = Trakio.new 'api_token'
@@ -47,7 +47,7 @@ describe Trakio do
47
47
 
48
48
  end
49
49
 
50
- describe '.channel' do
50
+ describe '#channel' do
51
51
 
52
52
  it "returns the current value" do
53
53
  trakio = Trakio.new 'api_token'
@@ -57,32 +57,32 @@ describe Trakio do
57
57
 
58
58
  end
59
59
 
60
- describe '.https=' do
60
+ describe '#https=' do
61
61
 
62
62
  it "sets whether https is to be used by this Interface" do
63
63
  trakio = Trakio.new 'api_token'
64
64
  trakio.https = false
65
- expect(trakio.instance_variable_get('@https')).to be_false
65
+ expect(trakio.instance_variable_get('@https')).to be false
66
66
  end
67
67
 
68
68
  end
69
69
 
70
- describe '.https' do
70
+ describe '#https' do
71
71
 
72
72
  it "returns the current value" do
73
73
  trakio = Trakio.new 'api_token'
74
74
  trakio.instance_variable_set('@https',false)
75
- expect(trakio.https).to be_false
75
+ expect(trakio.https).to be false
76
76
  end
77
77
 
78
78
  it "defaults to true" do
79
79
  trakio = Trakio.new 'api_token'
80
- expect(trakio.https).to be_true
80
+ expect(trakio.https).to be true
81
81
  end
82
82
 
83
83
  end
84
84
 
85
- describe '.host=' do
85
+ describe '#host=' do
86
86
 
87
87
  it "sets the host to be used by this Interface" do
88
88
  trakio = Trakio.new 'api_token'
@@ -92,7 +92,7 @@ describe Trakio do
92
92
 
93
93
  end
94
94
 
95
- describe '.host' do
95
+ describe '#host' do
96
96
 
97
97
  it "returns the current value" do
98
98
  trakio = Trakio.new 'api_token'
@@ -8,15 +8,16 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '.page_view' do
11
+ describe '#page_view' do
12
12
 
13
- context 'when a url is specified' do
14
- context 'when a title is specified' do
15
- it 'tracks a page_view' do
13
+ context "when a url is specified" do
14
+ context "when a title is specified" do
15
+ it "tracks a page_view" do
16
16
  stub = stub_request(:post, "https://api.trak.io/v1/track").
17
17
  with(:body => {
18
18
  token: 'my_api_token',
19
19
  data: {
20
+ time: /.+/,
20
21
  distinct_id: 'user@example.com',
21
22
  event: 'Page view',
22
23
  properties: {
@@ -35,12 +36,12 @@ describe Trakio do
35
36
  expect(resp[:status]).to eql 'success'
36
37
  expect(resp[:trak_id]).to eql '1234567890'
37
38
 
38
- stub.should have_been_requested
39
+ expect(stub).to have_been_requested
39
40
  end
40
41
  end
41
42
 
42
- context 'when a title is not specified' do
43
- it 'should raise an error' do
43
+ context "when a title is not specified" do
44
+ it "raises an error" do
44
45
  trakio = Trakio.new 'my_api_token'
45
46
  expect {
46
47
  trakio.page_view distinct_id: 'user@example.com',
@@ -50,16 +51,16 @@ describe Trakio do
50
51
  end
51
52
  end
52
53
 
53
- context 'when a url is not specified' do
54
- it 'should raise an error' do
54
+ context "when a url is not specified" do
55
+ it "raises an error" do
55
56
  trakio = Trakio.new 'my_api_token'
56
57
  expect {
57
58
  trakio.page_view distinct_id: 'user@example.com'
58
59
  }.to raise_error RuntimeError
59
60
  end
60
61
 
61
- context 'when a title is specified' do
62
- it 'should raise an error' do
62
+ context "when a title is specified" do
63
+ it "raises an error" do
63
64
  trakio = Trakio.new 'my_api_token'
64
65
  expect {
65
66
  trakio.page_view distinct_id: 'user@example.com', title: 'Test Title'
@@ -0,0 +1,40 @@
1
+ require 'spec_helper'
2
+
3
+ describe Trakio do
4
+
5
+ subject { Trakio }
6
+ let(:trakio) { Trakio.init 'my_api_token' }
7
+
8
+ after { Trakio.default_instance = nil }
9
+
10
+ before { Trakio.send(:public, *Trakio.protected_instance_methods) }
11
+
12
+ describe '#distinct_id_from_parameters' do
13
+
14
+ context "when the :distinct_id key is provided in parameters" do
15
+ it "returns that value" do
16
+ expect(trakio.distinct_id_from_parameters({ distinct_id: 'my_distinct_id'})).to eq 'my_distinct_id'
17
+ end
18
+ end
19
+
20
+ context "when the :distinct_id key isn't provided in parameters" do
21
+
22
+ it "returns @distinct_id" do
23
+ trakio.distinct_id = 'other_distinct_id'
24
+ expect(trakio.distinct_id_from_parameters({ distinct_id: nil})).to eq 'other_distinct_id'
25
+ end
26
+
27
+
28
+ context "and @distinct_id has not been set" do
29
+
30
+ it "raises an exception" do
31
+ expect{ trakio.distinct_id_from_parameters({ distinct_id: nil}) }.to raise_error RuntimeError
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+
38
+ end
39
+
40
+ end
@@ -8,7 +8,7 @@ describe Trakio do
8
8
  Trakio.default_instance = nil
9
9
  }
10
10
 
11
- describe '.track' do
11
+ describe '#track' do
12
12
 
13
13
  context "when a distinct_id is provided" do
14
14
 
@@ -19,6 +19,7 @@ describe Trakio do
19
19
  with(:body => {
20
20
  token: 'my_api_token',
21
21
  data: {
22
+ time: /.+/,
22
23
  distinct_id: 'user@example.com',
23
24
  event: 'my-event'
24
25
  }
@@ -33,7 +34,7 @@ describe Trakio do
33
34
  expect(resp[:status]).to eql 'success'
34
35
  expect(resp[:trak_id]).to eql '1234567890'
35
36
 
36
- stub.should have_been_requested
37
+ expect(stub).to have_been_requested
37
38
  end
38
39
 
39
40
  context "when a channel is provided" do
@@ -43,6 +44,7 @@ describe Trakio do
43
44
  with(:body => {
44
45
  token: 'my_api_token',
45
46
  data: {
47
+ time: /.+/,
46
48
  distinct_id: 'user@example.com',
47
49
  event: 'my-event',
48
50
  channel: 'my-channel'
@@ -59,7 +61,7 @@ describe Trakio do
59
61
  expect(resp[:status]).to eql 'success'
60
62
  expect(resp[:trak_id]).to eql '1234567890'
61
63
 
62
- stub.should have_been_requested
64
+ expect(stub).to have_been_requested
63
65
  end
64
66
 
65
67
  end
@@ -71,6 +73,7 @@ describe Trakio do
71
73
  with(:body => {
72
74
  token: 'my_api_token',
73
75
  data: {
76
+ time: /.+/,
74
77
  distinct_id: 'user@example.com',
75
78
  event: 'my-event',
76
79
  channel: 'my-channel'
@@ -86,7 +89,7 @@ describe Trakio do
86
89
  expect(resp[:status]).to eql 'success'
87
90
  expect(resp[:trak_id]).to eql '1234567890'
88
91
 
89
- stub.should have_been_requested
92
+ expect(stub).to have_been_requested
90
93
  end
91
94
 
92
95
  end
@@ -98,6 +101,7 @@ describe Trakio do
98
101
  with(:body => {
99
102
  token: 'my_api_token',
100
103
  data: {
104
+ time: /.+/,
101
105
  distinct_id: 'user@example.com',
102
106
  event: 'my-event',
103
107
  channel: 'my-channel',
@@ -117,7 +121,7 @@ describe Trakio do
117
121
  expect(resp[:status]).to eql 'success'
118
122
  expect(resp[:trak_id]).to eql '1234567890'
119
123
 
120
- stub.should have_been_requested
124
+ expect(stub).to have_been_requested
121
125
  end
122
126
 
123
127
  end
@@ -146,7 +150,7 @@ describe Trakio do
146
150
  expect(resp[:status]).to eql 'success'
147
151
  expect(resp[:trak_id]).to eql '1234567890'
148
152
 
149
- stub.should have_been_requested
153
+ expect(stub).to have_been_requested
150
154
  end
151
155
 
152
156
  end
@@ -175,7 +179,7 @@ describe Trakio do
175
179
  expect(resp[:status]).to eql 'success'
176
180
  expect(resp[:trak_id]).to eql '1234567890'
177
181
 
178
- stub.should have_been_requested
182
+ expect(stub).to have_been_requested
179
183
  end
180
184
 
181
185
  end
@@ -215,6 +219,7 @@ describe Trakio do
215
219
  with(:body => {
216
220
  token: 'my_api_token',
217
221
  data: {
222
+ time: /.+/,
218
223
  distinct_id: 'user@example.com',
219
224
  event: 'my-event',
220
225
  }
@@ -226,7 +231,7 @@ describe Trakio do
226
231
  trakio = Trakio.new 'my_api_token', distinct_id: 'user@example.com'
227
232
  trakio.track event: 'my-event'
228
233
 
229
- stub.should have_been_requested
234
+ expect(stub).to have_been_requested
230
235
  end
231
236
 
232
237
  end
data/trakio-ruby.gemspec CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.add_development_dependency 'bundler', '~> 1.3'
22
22
  spec.add_development_dependency 'rake'
23
- spec.add_development_dependency 'rspec'
23
+ spec.add_development_dependency 'rspec', '~> 3'
24
24
  spec.add_development_dependency 'webmock'
25
25
  spec.add_development_dependency 'fuubar'
26
26
  spec.add_development_dependency 'coveralls'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trakio-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew Spence
@@ -9,118 +9,118 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-04-16 00:00:00.000000000 Z
12
+ date: 2014-08-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ~>
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
20
  version: '1.3'
21
21
  type: :development
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ~>
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
27
  version: '1.3'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: rake
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ! '>='
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ! '>='
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: rspec
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ! '>='
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: '0'
48
+ version: '3'
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ! '>='
53
+ - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: '0'
55
+ version: '3'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: webmock
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ! '>='
60
+ - - ">="
61
61
  - !ruby/object:Gem::Version
62
62
  version: '0'
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ! '>='
67
+ - - ">="
68
68
  - !ruby/object:Gem::Version
69
69
  version: '0'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: fuubar
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ! '>='
74
+ - - ">="
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ! '>='
81
+ - - ">="
82
82
  - !ruby/object:Gem::Version
83
83
  version: '0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: coveralls
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ! '>='
88
+ - - ">="
89
89
  - !ruby/object:Gem::Version
90
90
  version: '0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ! '>='
95
+ - - ">="
96
96
  - !ruby/object:Gem::Version
97
97
  version: '0'
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: activesupport
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ! '>='
102
+ - - ">="
103
103
  - !ruby/object:Gem::Version
104
104
  version: '0'
105
105
  type: :development
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ! '>='
109
+ - - ">="
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: rest_client
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - ! '>='
116
+ - - ">="
117
117
  - !ruby/object:Gem::Version
118
118
  version: '0'
119
119
  type: :runtime
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
- - - ! '>='
123
+ - - ">="
124
124
  - !ruby/object:Gem::Version
125
125
  version: '0'
126
126
  description: Official trak.io ruby library for Ruby
@@ -131,13 +131,14 @@ executables: []
131
131
  extensions: []
132
132
  extra_rdoc_files: []
133
133
  files:
134
- - .coveralls.yml
135
- - .gitignore
136
- - .travis.yml
134
+ - ".coveralls.yml"
135
+ - ".gitignore"
136
+ - ".travis.yml"
137
137
  - Gemfile
138
138
  - LICENSE
139
139
  - README.md
140
140
  - Rakefile
141
+ - lib/trakio-ruby.rb
141
142
  - lib/trakio.rb
142
143
  - lib/trakio/version.rb
143
144
  - spec/spec_helper.rb
@@ -145,10 +146,11 @@ files:
145
146
  - spec/trakio/annotate_spec.rb
146
147
  - spec/trakio/class_methods_spec.rb
147
148
  - spec/trakio/exception_spec.rb
148
- - spec/trakio/indentify_spec.rb
149
+ - spec/trakio/identify_spec.rb
149
150
  - spec/trakio/initialize_spec.rb
150
151
  - spec/trakio/instance_methods_spec.rb
151
152
  - spec/trakio/page_view_spec.rb
153
+ - spec/trakio/protected_instance_methods_spec.rb
152
154
  - spec/trakio/track_spec.rb
153
155
  - trakio-ruby.gemspec
154
156
  homepage: https://trak.io
@@ -161,17 +163,17 @@ require_paths:
161
163
  - lib
162
164
  required_ruby_version: !ruby/object:Gem::Requirement
163
165
  requirements:
164
- - - ! '>='
166
+ - - ">="
165
167
  - !ruby/object:Gem::Version
166
168
  version: '0'
167
169
  required_rubygems_version: !ruby/object:Gem::Requirement
168
170
  requirements:
169
- - - ! '>='
171
+ - - ">="
170
172
  - !ruby/object:Gem::Version
171
173
  version: '0'
172
174
  requirements: []
173
175
  rubyforge_project:
174
- rubygems_version: 2.0.6
176
+ rubygems_version: 2.2.2
175
177
  signing_key:
176
178
  specification_version: 4
177
179
  summary: Official trak.io ruby library for Ruby
@@ -181,8 +183,9 @@ test_files:
181
183
  - spec/trakio/annotate_spec.rb
182
184
  - spec/trakio/class_methods_spec.rb
183
185
  - spec/trakio/exception_spec.rb
184
- - spec/trakio/indentify_spec.rb
186
+ - spec/trakio/identify_spec.rb
185
187
  - spec/trakio/initialize_spec.rb
186
188
  - spec/trakio/instance_methods_spec.rb
187
189
  - spec/trakio/page_view_spec.rb
190
+ - spec/trakio/protected_instance_methods_spec.rb
188
191
  - spec/trakio/track_spec.rb