kissmetrics 1.0.2 → 2.0.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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.2
1
+ 2.0.0
@@ -4,14 +4,14 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{kissmetrics}
8
- s.version = "1.0.1"
7
+ s.name = "kissmetrics"
8
+ s.version = "2.0.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jason Morrison"]
12
- s.date = %q{2011-06-28}
13
- s.description = %q{Use the KISSmetrics HTTP API to identify and alias users, track events, and set properties.}
14
- s.email = %q{jmorrison@thoughtbot.com}
12
+ s.date = "2011-10-18"
13
+ s.description = "Use the KISSmetrics HTTP API to identify and alias users, track events, and set properties."
14
+ s.email = "jmorrison@thoughtbot.com"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
17
  "README.rdoc"
@@ -31,11 +31,11 @@ Gem::Specification.new do |s|
31
31
  "spec/kissmetrics/http_client_spec.rb",
32
32
  "spec/spec_helper.rb"
33
33
  ]
34
- s.homepage = %q{http://github.com/jasonm/kissmetrics}
34
+ s.homepage = "http://github.com/jasonm/kissmetrics"
35
35
  s.licenses = ["MIT"]
36
36
  s.require_paths = ["lib"]
37
- s.rubygems_version = %q{1.6.2}
38
- s.summary = %q{A simple, clean wrapper around the KISSmetrics HTTP API}
37
+ s.rubygems_version = "1.8.10"
38
+ s.summary = "A simple, clean wrapper around the KISSmetrics HTTP API"
39
39
 
40
40
  if s.respond_to? :specification_version then
41
41
  s.specification_version = 3
@@ -37,12 +37,12 @@ module Kissmetrics
37
37
  end
38
38
 
39
39
  def port
40
- 443
40
+ 80
41
41
  end
42
42
 
43
43
  def request(path, params)
44
44
  http = Net::HTTP.new(host, port)
45
- http.use_ssl = true
45
+ http.use_ssl = false
46
46
  http.get("#{path}?#{query_string(params)}")
47
47
  end
48
48
 
@@ -7,15 +7,17 @@ describe Kissmetrics::HttpClient, "class" do
7
7
  end
8
8
 
9
9
  describe Kissmetrics::HttpClient, "events" do
10
+ let(:event_url) { "http://trk.kissmetrics.com/e" }
11
+
10
12
  subject { Kissmetrics::HttpClient.new("my-api-key") }
11
13
 
12
14
  before do
13
- stub_request(:get, %r{https://trk.kissmetrics.com/e}).to_return(:body => "")
15
+ stub_request(:get, Regexp.new(event_url)).to_return(:body => "")
14
16
  end
15
17
 
16
18
  it "records events without properties" do
17
19
  subject.record('identity', 'Signed Up')
18
- WebMock.should have_requested(:get, "https://trk.kissmetrics.com/e").with({
20
+ WebMock.should have_requested(:get, event_url).with({
19
21
  :query => {
20
22
  :_k => 'my-api-key',
21
23
  :_p => 'identity',
@@ -26,7 +28,7 @@ describe Kissmetrics::HttpClient, "events" do
26
28
 
27
29
  it "records events with properties" do
28
30
  subject.record('identity', 'Signed Up', { 'Plan' => 'Medium', 'Duration' => 'Year' })
29
- WebMock.should have_requested(:get, "https://trk.kissmetrics.com/e").with({
31
+ WebMock.should have_requested(:get, event_url).with({
30
32
  :query => {
31
33
  :_k => 'my-api-key',
32
34
  :_p => 'identity',
@@ -39,8 +41,10 @@ describe Kissmetrics::HttpClient, "events" do
39
41
  end
40
42
 
41
43
  describe Kissmetrics::HttpClient, "aliasing" do
44
+ let(:alias_url) { "http://trk.kissmetrics.com/a" }
45
+
42
46
  before do
43
- stub_request(:get, %r{https://trk.kissmetrics.com/a}).to_return(:body => "")
47
+ stub_request(:get, Regexp.new(alias_url)).to_return(:body => "")
44
48
  end
45
49
 
46
50
  subject { Kissmetrics::HttpClient.new("my-api-key") }
@@ -48,7 +52,7 @@ describe Kissmetrics::HttpClient, "aliasing" do
48
52
  it "aliases a person" do
49
53
  subject.alias('old_identity', 'new_identity')
50
54
 
51
- WebMock.should have_requested(:get, "https://trk.kissmetrics.com/a").with({
55
+ WebMock.should have_requested(:get, alias_url).with({
52
56
  :query => {
53
57
  :_k => 'my-api-key',
54
58
  :_p => 'old_identity',
@@ -59,8 +63,9 @@ describe Kissmetrics::HttpClient, "aliasing" do
59
63
  end
60
64
 
61
65
  describe Kissmetrics::HttpClient, "setting properties" do
66
+ let(:set_property_url) { "http://trk.kissmetrics.com/s" }
62
67
  before do
63
- stub_request(:get, %r{https://trk.kissmetrics.com/s}).to_return(:body => "")
68
+ stub_request(:get, Regexp.new(set_property_url)).to_return(:body => "")
64
69
  end
65
70
 
66
71
  subject { Kissmetrics::HttpClient.new("my-api-key") }
@@ -71,7 +76,7 @@ describe Kissmetrics::HttpClient, "setting properties" do
71
76
  'Background' => 'Gray'
72
77
  })
73
78
 
74
- WebMock.should have_requested(:get, "https://trk.kissmetrics.com/s").with({
79
+ WebMock.should have_requested(:get, set_property_url).with({
75
80
  :query => {
76
81
  :_k => 'my-api-key',
77
82
  :_p => 'identity',
@@ -86,6 +91,7 @@ describe Kissmetrics::HttpClient, "setting properties" do
86
91
  Net::HTTP.stub(:new => http)
87
92
 
88
93
  http.should_receive(:get).with(%r{Some\+property=Some\+value})
94
+ http.should_receive(:use_ssl=).with(false)
89
95
 
90
96
  subject.set('identity', {
91
97
  'Some property' => 'Some value'
metadata CHANGED
@@ -1,8 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kissmetrics
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 15
4
5
  prerelease:
5
- version: 1.0.2
6
+ segments:
7
+ - 2
8
+ - 0
9
+ - 0
10
+ version: 2.0.0
6
11
  platform: ruby
7
12
  authors:
8
13
  - Jason Morrison
@@ -10,75 +15,102 @@ autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
17
 
13
- date: 2011-06-30 00:00:00 -04:00
14
- default_executable:
18
+ date: 2011-10-18 00:00:00 Z
15
19
  dependencies:
16
20
  - !ruby/object:Gem::Dependency
17
- name: rspec
18
- requirement: &id001 !ruby/object:Gem::Requirement
21
+ version_requirements: &id001 !ruby/object:Gem::Requirement
19
22
  none: false
20
23
  requirements:
21
24
  - - ~>
22
25
  - !ruby/object:Gem::Version
26
+ hash: 3
27
+ segments:
28
+ - 2
29
+ - 3
30
+ - 0
23
31
  version: 2.3.0
24
- type: :development
32
+ requirement: *id001
25
33
  prerelease: false
26
- version_requirements: *id001
34
+ name: rspec
35
+ type: :development
27
36
  - !ruby/object:Gem::Dependency
28
- name: yard
29
- requirement: &id002 !ruby/object:Gem::Requirement
37
+ version_requirements: &id002 !ruby/object:Gem::Requirement
30
38
  none: false
31
39
  requirements:
32
40
  - - ~>
33
41
  - !ruby/object:Gem::Version
42
+ hash: 7
43
+ segments:
44
+ - 0
45
+ - 6
46
+ - 0
34
47
  version: 0.6.0
35
- type: :development
48
+ requirement: *id002
36
49
  prerelease: false
37
- version_requirements: *id002
50
+ name: yard
51
+ type: :development
38
52
  - !ruby/object:Gem::Dependency
39
- name: bundler
40
- requirement: &id003 !ruby/object:Gem::Requirement
53
+ version_requirements: &id003 !ruby/object:Gem::Requirement
41
54
  none: false
42
55
  requirements:
43
56
  - - ~>
44
57
  - !ruby/object:Gem::Version
58
+ hash: 23
59
+ segments:
60
+ - 1
61
+ - 0
62
+ - 0
45
63
  version: 1.0.0
46
- type: :development
64
+ requirement: *id003
47
65
  prerelease: false
48
- version_requirements: *id003
66
+ name: bundler
67
+ type: :development
49
68
  - !ruby/object:Gem::Dependency
50
- name: jeweler
51
- requirement: &id004 !ruby/object:Gem::Requirement
69
+ version_requirements: &id004 !ruby/object:Gem::Requirement
52
70
  none: false
53
71
  requirements:
54
72
  - - ~>
55
73
  - !ruby/object:Gem::Version
74
+ hash: 11
75
+ segments:
76
+ - 1
77
+ - 6
78
+ - 2
56
79
  version: 1.6.2
57
- type: :development
80
+ requirement: *id004
58
81
  prerelease: false
59
- version_requirements: *id004
82
+ name: jeweler
83
+ type: :development
60
84
  - !ruby/object:Gem::Dependency
61
- name: rcov
62
- requirement: &id005 !ruby/object:Gem::Requirement
85
+ version_requirements: &id005 !ruby/object:Gem::Requirement
63
86
  none: false
64
87
  requirements:
65
88
  - - ">="
66
89
  - !ruby/object:Gem::Version
90
+ hash: 3
91
+ segments:
92
+ - 0
67
93
  version: "0"
68
- type: :development
94
+ requirement: *id005
69
95
  prerelease: false
70
- version_requirements: *id005
96
+ name: rcov
97
+ type: :development
71
98
  - !ruby/object:Gem::Dependency
72
- name: webmock
73
- requirement: &id006 !ruby/object:Gem::Requirement
99
+ version_requirements: &id006 !ruby/object:Gem::Requirement
74
100
  none: false
75
101
  requirements:
76
102
  - - ~>
77
103
  - !ruby/object:Gem::Version
104
+ hash: 11
105
+ segments:
106
+ - 1
107
+ - 6
108
+ - 2
78
109
  version: 1.6.2
79
- type: :development
110
+ requirement: *id006
80
111
  prerelease: false
81
- version_requirements: *id006
112
+ name: webmock
113
+ type: :development
82
114
  description: Use the KISSmetrics HTTP API to identify and alias users, track events, and set properties.
83
115
  email: jmorrison@thoughtbot.com
84
116
  executables: []
@@ -102,7 +134,6 @@ files:
102
134
  - lib/kissmetrics/http_client.rb
103
135
  - spec/kissmetrics/http_client_spec.rb
104
136
  - spec/spec_helper.rb
105
- has_rdoc: true
106
137
  homepage: http://github.com/jasonm/kissmetrics
107
138
  licenses:
108
139
  - MIT
@@ -116,7 +147,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
116
147
  requirements:
117
148
  - - ">="
118
149
  - !ruby/object:Gem::Version
119
- hash: 2269321523201679432
150
+ hash: 3
120
151
  segments:
121
152
  - 0
122
153
  version: "0"
@@ -125,11 +156,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
125
156
  requirements:
126
157
  - - ">="
127
158
  - !ruby/object:Gem::Version
159
+ hash: 3
160
+ segments:
161
+ - 0
128
162
  version: "0"
129
163
  requirements: []
130
164
 
131
165
  rubyforge_project:
132
- rubygems_version: 1.6.2
166
+ rubygems_version: 1.8.10
133
167
  signing_key:
134
168
  specification_version: 3
135
169
  summary: A simple, clean wrapper around the KISSmetrics HTTP API