vero 0.1.1 → 0.1.2
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.
- data/Gemfile.lock +6 -6
- data/README.markdown +1 -1
- data/info +3 -0
- data/lib/vero/trackable.rb +5 -6
- data/lib/vero/version.rb +1 -1
- data/spec/lib/config_spec.rb +2 -2
- data/spec/lib/trackable_spec.rb +17 -27
- metadata +2 -1
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
vero (0.
|
4
|
+
vero (0.1.2)
|
5
5
|
delayed_job
|
6
6
|
delayed_job_active_record
|
7
7
|
delayed_job_mongoid
|
@@ -38,7 +38,6 @@ GEM
|
|
38
38
|
i18n (~> 0.6)
|
39
39
|
multi_json (~> 1.0)
|
40
40
|
arel (3.0.2)
|
41
|
-
bson (1.6.4)
|
42
41
|
builder (3.0.0)
|
43
42
|
columnize (0.3.6)
|
44
43
|
debugger (1.1.3)
|
@@ -67,13 +66,14 @@ GEM
|
|
67
66
|
mime-types (~> 1.16)
|
68
67
|
treetop (~> 1.4.8)
|
69
68
|
mime-types (1.18)
|
70
|
-
|
71
|
-
bson (~> 1.6.2)
|
72
|
-
mongoid (2.4.11)
|
69
|
+
mongoid (3.0.1)
|
73
70
|
activemodel (~> 3.1)
|
74
|
-
|
71
|
+
moped (~> 1.1.1)
|
72
|
+
origin (~> 1.0.3)
|
75
73
|
tzinfo (~> 0.3.22)
|
74
|
+
moped (1.1.2)
|
76
75
|
multi_json (1.3.6)
|
76
|
+
origin (1.0.4)
|
77
77
|
polyglot (0.3.3)
|
78
78
|
rack (1.4.1)
|
79
79
|
rack-cache (1.2)
|
data/README.markdown
CHANGED
@@ -107,7 +107,7 @@ You may want to send additional data about an event:
|
|
107
107
|
|
108
108
|
if @contest.save
|
109
109
|
# Tell Vero that a new contest has been created, and the id and name
|
110
|
-
current_user.track('new_contest_created', {id
|
110
|
+
current_user.track('new_contest_created', {:id => @contest.id, :name => @content.name})
|
111
111
|
|
112
112
|
flash[:notice] = "New contest saved successfully!"
|
113
113
|
redirect_to contests_path
|
data/info
ADDED
@@ -0,0 +1,3 @@
|
|
1
|
+
# Logfile created on 2012-07-16 12:39:42 +1000 by logger.rb/31641
|
2
|
+
Vero: Error attempting to track event: {:auth_token=>"YWJjZDEyMzQ6ZWZnaDU2Nzg=", :development_mode=>true, :event_name=>"test_event", :identity=>{:email=>"durkster@gmail.com", :age=>20}, :data=>{:test=>1}} error: Connection refused - connect(2)
|
3
|
+
Vero: Error attempting to track event: {:auth_token=>"YWJjZDEyMzQ6ZWZnaDU2Nzg=", :development_mode=>true, :event_name=>"test_event", :identity=>{:email=>"durkster@gmail.com", :age=>20}, :data=>{:test=>1}} error: Connection refused - connect(2)
|
data/lib/vero/trackable.rb
CHANGED
@@ -38,11 +38,11 @@ module Vero
|
|
38
38
|
|
39
39
|
def track(event_name, event_data = {}, cta = '')
|
40
40
|
validate_configured!
|
41
|
-
validate_track_params!(event_name, event_data
|
41
|
+
validate_track_params!(event_name, event_data)
|
42
42
|
|
43
43
|
config = Vero::App.config
|
44
44
|
request_params = config.request_params
|
45
|
-
request_params.merge!(event_name
|
45
|
+
request_params.merge!({:event_name => event_name, :identity => self.to_vero, :data => event_data})
|
46
46
|
|
47
47
|
method = !config.async ? :post_now : :post_later
|
48
48
|
self.send(method, "http://#{config.domain}/api/v1/track.json", request_params)
|
@@ -54,7 +54,7 @@ module Vero
|
|
54
54
|
job = Vero::Jobs::RestPostJob.new(url, params)
|
55
55
|
job.perform
|
56
56
|
rescue => e
|
57
|
-
Rails.logger.info "Vero: Error attempting to track event: #{params.to_s} error: #{e.message}"
|
57
|
+
Rails.logger.info "Vero: Error attempting to track event: #{params.to_s} error: #{e.message}" if defined? Rails && Rails.logger
|
58
58
|
end
|
59
59
|
end
|
60
60
|
|
@@ -79,14 +79,13 @@ module Vero
|
|
79
79
|
end
|
80
80
|
end
|
81
81
|
|
82
|
-
def validate_track_params!(event_name, event_data
|
82
|
+
def validate_track_params!(event_name, event_data)
|
83
83
|
result = true
|
84
84
|
|
85
85
|
result &&= event_name.kind_of?(String) && !event_name.blank?
|
86
86
|
result &&= event_data.nil? || event_data.kind_of?(Hash)
|
87
|
-
result &&= cta.nil? || cta.kind_of?(String)
|
88
87
|
|
89
|
-
raise ArgumentError.new({event_name
|
88
|
+
raise ArgumentError.new({:event_name => event_name, :event_data => event_data}) unless result
|
90
89
|
end
|
91
90
|
end
|
92
91
|
end
|
data/lib/vero/version.rb
CHANGED
data/spec/lib/config_spec.rb
CHANGED
@@ -40,10 +40,10 @@ describe Vero::Config do
|
|
40
40
|
|
41
41
|
@config.api_key = "abcd1234"
|
42
42
|
@config.secret = "abcd1234"
|
43
|
-
@config.request_params.should == {auth_token
|
43
|
+
@config.request_params.should == {:auth_token => "YWJjZDEyMzQ6YWJjZDEyMzQ="}
|
44
44
|
|
45
45
|
@config.development_mode = true
|
46
|
-
@config.request_params.should == {auth_token
|
46
|
+
@config.request_params.should == {:auth_token => "YWJjZDEyMzQ6YWJjZDEyMzQ=", :development_mode => true}
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
data/spec/lib/trackable_spec.rb
CHANGED
@@ -1,19 +1,21 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Vero::Trackable do
|
4
|
+
before :each do
|
5
|
+
@request_params = {
|
6
|
+
:event_name => 'test_event',
|
7
|
+
:auth_token => 'YWJjZDEyMzQ6ZWZnaDU2Nzg=',
|
8
|
+
:identity => {:email => 'durkster@gmail.com', :age => 20},
|
9
|
+
:data => { :test => 1 },
|
10
|
+
:development_mode => true
|
11
|
+
}
|
12
|
+
@url = "http://www.getvero.com/api/v1/track.json"
|
13
|
+
@user = User.new
|
14
|
+
end
|
15
|
+
|
4
16
|
context "the gem has not been configured" do
|
5
17
|
before :each do
|
6
18
|
Vero::App.reset!
|
7
|
-
@request_params = {
|
8
|
-
event_name: 'test_event',
|
9
|
-
auth_token: 'YWJjZDEyMzQ6ZWZnaDU2Nzg=',
|
10
|
-
identity: {email: 'durkster@gmail.com', age: 20},
|
11
|
-
data: { test: 1 },
|
12
|
-
cta: 'test',
|
13
|
-
development_mode: true
|
14
|
-
}
|
15
|
-
@url = "http://www.getvero.com/api/v1/track.json"
|
16
|
-
@user = User.new
|
17
19
|
end
|
18
20
|
|
19
21
|
describe :track do
|
@@ -31,29 +33,15 @@ describe Vero::Trackable do
|
|
31
33
|
c.secret = 'efgh5678'
|
32
34
|
c.async = false
|
33
35
|
end
|
34
|
-
@user = User.new
|
35
36
|
end
|
36
37
|
|
37
38
|
describe :track do
|
38
|
-
before :each do
|
39
|
-
@request_params = {
|
40
|
-
event_name: 'test_event',
|
41
|
-
auth_token: 'YWJjZDEyMzQ6ZWZnaDU2Nzg=',
|
42
|
-
identity: {email: 'durkster@gmail.com', age: 20},
|
43
|
-
data: { test: 1 },
|
44
|
-
cta: 'test',
|
45
|
-
development_mode: true
|
46
|
-
}
|
47
|
-
@url = "http://www.getvero.com/api/v1/track.json"
|
48
|
-
end
|
49
|
-
|
50
39
|
it "should not send a track request when the required parameters are invalid" do
|
51
40
|
@user.stub(:post_now).and_return(200)
|
52
41
|
|
53
42
|
expect { @user.track(nil) }.to raise_error
|
54
43
|
expect { @user.track('') }.to raise_error
|
55
44
|
expect { @user.track('test', '') }.to raise_error
|
56
|
-
expect { @user.track('test', {}, 8) }.to raise_error
|
57
45
|
end
|
58
46
|
|
59
47
|
it "should send a track request when async is set to false" do
|
@@ -103,14 +91,16 @@ describe Vero::Trackable do
|
|
103
91
|
|
104
92
|
describe :to_vero do
|
105
93
|
it "should return a hash of all values mapped by trackable" do
|
94
|
+
temp_params = {:email => 'durkster@gmail.com', :age => 20}
|
95
|
+
|
106
96
|
user = User.new
|
107
|
-
user.to_vero.should ==
|
97
|
+
user.to_vero.should == temp_params
|
108
98
|
|
109
99
|
user = UserWithoutEmail.new
|
110
|
-
user.to_vero.should ==
|
100
|
+
user.to_vero.should == temp_params
|
111
101
|
|
112
102
|
user = UserWithEmailAddress.new
|
113
|
-
user.to_vero.should ==
|
103
|
+
user.to_vero.should == temp_params
|
114
104
|
end
|
115
105
|
end
|
116
106
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vero
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -83,6 +83,7 @@ extra_rdoc_files: []
|
|
83
83
|
files:
|
84
84
|
- Gemfile
|
85
85
|
- Gemfile.lock
|
86
|
+
- info
|
86
87
|
- lib/generators/vero_generator.rb
|
87
88
|
- lib/vero/app.rb
|
88
89
|
- lib/vero/config.rb
|