gosquared 1.0.3 → 2.0.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
  SHA1:
3
- metadata.gz: 2cb0d96bd28e30dea4b869f9f94afe24b697f59d
4
- data.tar.gz: 6a9b3f21a35ca37f09a0aa6a3f260664913e675f
3
+ metadata.gz: 2c9fe8b01e1133ea8e5a1d3a9b58dac91633cb15
4
+ data.tar.gz: 05501768ac59a9f9117e94ea6b0eff4c3af1a4a6
5
5
  SHA512:
6
- metadata.gz: 067cae35ed70d8f8bd9197c978eda94f8b07af7df6d7558a589084aa697c99ffb269e55b45956c858f8eb573f77d00bec6b26feeab7f4e8a887cde4b71b458bf
7
- data.tar.gz: 9181f9ccc43a923e14c69a1d7a5440741d8fc35f8a0a60247f3297f81243ebeedf9901c05a9979764640cb38e04e900ac15615192a7e7dd8d600a02940ac93e4
6
+ metadata.gz: 5a174baff33c17ef135723f2d80f04fa0c53b15f73ac4dffb835f7f9f6ff3846cb71a8a2e90252e3648add9d43b16ca8acc3a50df0c02ee4a39821bd0e04e6ff
7
+ data.tar.gz: f4c11daa660cca3cad03022a5db5d646dfb166a8177adf8b60f39d05e717faa7422000e4ebd5c1328490ac05b01bc56c2f3cfd7e7c73884d3ecc2c98485b4010
data/README.md CHANGED
@@ -1,19 +1,34 @@
1
1
  ## GoSquared Ruby Gem
2
2
 
3
- [![Build Status](https://travis-ci.org/gosquared/ruby-gem.svg?branch=master)](https://travis-ci.org/gosquared/ruby-gem)
3
+ [![Build Status](https://travis-ci.org/gosquared/ruby-client.svg?branch=master)](https://travis-ci.org/gosquared/ruby-gem)
4
4
 
5
5
  **This is an early beta, please open an issue if you find anything not working, or to leave feedback for improvement. You can also get in touch directly: russell@gosquared.com**
6
6
 
7
- This gems works with the [GoSquared API](https://www.gosquared.com/docs/api/), making it simple to integrate GoSquared with your Rails app. You can use it for both fetching metrics from your GoSquared account and also posting new events and contacts.
7
+ This gems works with the [GoSquared API](https://www.gosquared.com/docs/api/), making it simple to integrate GoSquared with your Rails app. You can use it for both fetching metrics from your GoSquared account and also posting new events and contacts.
8
8
 
9
9
  All functions listed in the API documentation are methods you can call on the GoSquared class.
10
10
 
11
11
  #Installation
12
12
 
13
13
  ```ruby
14
- gem install gosquared
14
+ gem install gosquared
15
15
  ```
16
16
 
17
+ Then require GoSquared in your application
18
+
19
+ ```ruby
20
+ require 'gosquared'
21
+ ```
22
+
23
+ If you’d like to quickly install your GoSquared javascript tracking code on all of your Rails’ views, you can easily run:
24
+
25
+ ```ruby
26
+ rails generate go_squared:config ‘your_site_token'
27
+ ```
28
+
29
+ This will insert a ```<script>``` tag automatically before the closing ```</body>``` tag on each view rendered.
30
+
31
+
17
32
  #Tracking API
18
33
  This is for sending data to GoSquared. It allows you to track:
19
34
  * Events
@@ -23,9 +38,9 @@ This is for sending data to GoSquared. It allows you to track:
23
38
  ##Track Events
24
39
  ```ruby
25
40
 
26
- gs = GoSquared.new("your_API_key","your_project_token")
41
+ gs = GoSquared::RubyLibrary.new("your_API_key","your_project_token")
27
42
 
28
- gs.tracking.event({event: {name: 'event'}})
43
+ gs.tracking.event({ event: { name: 'event' } })
29
44
 
30
45
  #builds the url to the 'GoSquared Tracking' endpoint with the "events" dimension and an event to add to the events list
31
46
 
@@ -41,9 +56,12 @@ Reponse Message: OK
41
56
  ##Track Transactions
42
57
 
43
58
  ```ruby
44
- gs = GoSquared.new("your_API_key","your_project_token")
59
+ gs = GoSquared::RubyLibrary.new("your_API_key","your_project_token")
45
60
 
46
- gs.tracking.transaction({ transaction: {id: "1", revenue: 50, quantity: 1, previous_transaction_timestamp: Time.new } })
61
+ gs.tracking.transaction({
62
+ transaction: { id: "1", revenue: 50, quantity: 1,
63
+ previous_transaction_timestamp: Time.new }
64
+ })
47
65
 
48
66
  gs.tracking.post
49
67
 
@@ -53,9 +71,27 @@ Reponse Message: OK
53
71
 
54
72
  ##Track People
55
73
  ```ruby
56
- gs = GoSquared.new("your_API_key","your_project_token")
57
-
58
- gs.tracking.identify({person_id:"email:example_email@example.com", properties: {first_name: 'Example', last_name: "User", created_at: Time.new, custom: {any: "properties", you: "would_like" } })
74
+ gs = GoSquared::RubyLibrary.new("your_API_key","your_project_token")
75
+
76
+ gs.tracking.identify({
77
+ person_id: "email:user@test.com", # Required
78
+
79
+ # Reserved property names
80
+ properties: {
81
+ name: "Test User",
82
+ username: "testuser",
83
+ phone: "+44123456789",
84
+ created_at:"2016-06-07T15:44:20Z", # ISO 8601 formatted String
85
+ company_name:"GoSquared",
86
+ company_industry:"Customer Analytics",
87
+ company_size: 15000,
88
+
89
+ # Custom properties
90
+ custom: {
91
+ # custom_property_name: "custom property value"
92
+ }
93
+ }
94
+ })
59
95
 
60
96
  gs.tracking.post
61
97
 
@@ -77,7 +113,7 @@ The Now API provides real-time concurrent information about your sites and apps,
77
113
  _Now Example:_
78
114
 
79
115
  ```ruby
80
- gs = GoSquared.new("your_API_key","your_project_token")
116
+ gs = GoSquared::RubyLibrary.new("your_API_key","your_project_token")
81
117
 
82
118
  #instantiates new GoSquared object
83
119
 
@@ -98,7 +134,7 @@ The Trends API provides historical analytics information for any given period in
98
134
  _Trends Example:_
99
135
 
100
136
  ```ruby
101
- gs = GoSquared.new("your_API_key","your_project_token")
137
+ gs = GoSquared::RubyLibrary.new("your_API_key","your_project_token")
102
138
 
103
139
  gs.trends.browser.from('2016-06-30').to('2016-07-07')
104
140
 
@@ -117,7 +153,7 @@ gs.trends.fetch
117
153
 
118
154
  ```ruby
119
155
 
120
- gs = GoSquared.new("your_API_key","your_project_token")
156
+ gs = GoSquared::RubyLibrary.new("your_API_key","your_project_token")
121
157
 
122
158
  gs.people.smartgroups
123
159
 
@@ -136,7 +172,7 @@ _Account Example:_
136
172
 
137
173
  ```ruby
138
174
 
139
- gs = GoSquared.new("your_API_key","your_project_token")
175
+ gs = GoSquared::RubyLibrary.new("your_API_key","your_project_token")
140
176
 
141
177
  gs.account.blocked.ips.ip('5.10.148.50')
142
178
 
@@ -149,7 +185,7 @@ gs.account.post
149
185
  Reponse Message: OK
150
186
  => #<Net::HTTPOK 200 OK readbody=true>
151
187
 
152
- gs.account.sites.token("you_site_token")
188
+ gs.account.sites.token("your_site_token")
153
189
 
154
190
  #builds the url to the 'GoSquared Account' endpoint with the "Sites" dimension and token you want to retrieve the site by.
155
191
 
data/lib/config.rb ADDED
@@ -0,0 +1,16 @@
1
+ module GoSquared
2
+
3
+ class << self
4
+ attr_accessor :configuration
5
+ end
6
+
7
+ def self.configure
8
+ self.configuration ||= Configuration.new
9
+ block_given? ? yield(configuration) : configuration
10
+ end
11
+
12
+ class Configuration
13
+ attr_accessor :site_token
14
+ end
15
+
16
+ end
data/lib/gosquared.rb CHANGED
@@ -1,34 +1,40 @@
1
- require_relative './gosquared/trends'
2
- require_relative './gosquared/tracking'
3
- require_relative './gosquared/people'
4
- require_relative './gosquared/now'
5
- require_relative './gosquared/account'
1
+ require 'tracker_inject/railtie' if defined? (Rails)
2
+ require_relative "gosquared/trends"
3
+ require_relative "gosquared/tracking"
4
+ require_relative "gosquared/people"
5
+ require_relative "gosquared/now"
6
+ require_relative "gosquared/account"
7
+ require_relative "config"
6
8
 
7
- class GoSquared
9
+ module GoSquared
8
10
 
9
- def initialize api_key, site_id
10
- @api_key = api_key
11
- @site_id = site_id
12
- end
11
+ class RubyLibrary
13
12
 
14
- def trends
15
- @trends ||= Trends.new(@api_key, @site_id)
16
- end
13
+ def initialize api_key, site_id
14
+ @api_key = api_key
15
+ @site_id = site_id
16
+ end
17
17
 
18
- def tracking
19
- @tracking ||= Tracking.new(@api_key, @site_id)
20
- end
18
+ def trends
19
+ @trends ||= Trends.new(@api_key, @site_id)
20
+ end
21
21
 
22
- def people
23
- @people ||= People.new(@api_key, @site_id)
24
- end
22
+ def tracking
23
+ @tracking ||= Tracking.new(@api_key, @site_id)
24
+ end
25
25
 
26
- def now
27
- @now ||= Now.new(@api_key, @site_id)
28
- end
26
+ def people
27
+ @people ||= People.new(@api_key, @site_id)
28
+ end
29
+
30
+ def now
31
+ @now ||= Now.new(@api_key, @site_id)
32
+ end
33
+
34
+ def account
35
+ @account ||= Account.new(@api_key, @site_id)
36
+ end
29
37
 
30
- def account
31
- @account ||= Account.new(@api_key, @site_id)
32
38
  end
33
39
 
34
- end
40
+ end
@@ -1,7 +1,7 @@
1
- require_relative 'client'
1
+ require_relative "client"
2
2
 
3
3
  class Account
4
-
4
+
5
5
  BASEURL = "https://api.gosquared.com/account/v1/"
6
6
  DIMENSIONS = %w(blocked feeds reportPreferences sharedUsers sites taggedVisitors triggerTypes webhooks)
7
7
  DIMENSION_FILTER = %w(token webhookID visitorID triggerType)
@@ -70,7 +70,7 @@ class Account
70
70
  @visitor = "/visitors/#{id}"
71
71
  self
72
72
  end
73
-
73
+
74
74
  def build_url(ips = @ips)
75
75
  array = [""]
76
76
  @url = BASEURL + @dimension + @dimension_filter + @visitor + @bots + ips +
@@ -80,4 +80,4 @@ class Account
80
80
  @url = @url.concat(parameters)
81
81
  end
82
82
 
83
- end
83
+ end
data/lib/gosquared/now.rb CHANGED
@@ -1,12 +1,12 @@
1
- require_relative 'client'
1
+ require_relative "client"
2
2
  class Now
3
3
 
4
4
  BASEURL = "https://api.gosquared.com/now/v3/"
5
- DIMENSIONS = %w(browsers campaigns concurrents engagement geo languages notifications
5
+ DIMENSIONS = %w(browsers campaigns concurrents engagement geo languages notifications
6
6
  organisations overview pages platforms sources time timeSeries visitors)
7
- @@filters = {dateFormat: @date_format, from: @from, to: @to,
8
- format: @format, limit: @limit, sort: @sort,
9
- presenter: @presenter, visitors_mode: @string, href: @href,
7
+ @@filters = {dateFormat: @date_format, from: @from, to: @to,
8
+ format: @format, limit: @limit, sort: @sort,
9
+ presenter: @presenter, visitors_mode: @string, href: @href,
10
10
  drill_limit: @drill_limit, sections: @sections,
11
11
  minimal: @minimal, interval: @interval}
12
12
 
@@ -19,10 +19,10 @@ class Now
19
19
 
20
20
  DIMENSIONS.each do |dimension|
21
21
  define_method dimension do
22
- @dimension = dimension
22
+ @dimension = dimension
23
23
  self
24
24
  end
25
- end
25
+ end
26
26
 
27
27
  @@filters.each do |key, value|
28
28
  define_method key do |argument|
@@ -36,7 +36,7 @@ class Now
36
36
  @@filters.each{|key, value| @@filters[key]=nil} if data
37
37
  data
38
38
  end
39
-
39
+
40
40
  private
41
41
 
42
42
  def url
@@ -47,4 +47,4 @@ class Now
47
47
  @url = @url.concat(parameters)
48
48
  end
49
49
 
50
- end
50
+ end
@@ -1,10 +1,10 @@
1
- require_relative 'client'
1
+ require_relative "client"
2
2
  class People
3
3
 
4
4
  BASEURL = "https://api.gosquared.com/people/v1/"
5
5
  VERSION = %w(v1 v2 v3)
6
6
  DIMENSIONS = %w(devices eventTypes people propertyTypes feed smartgroups)
7
- @@filters = {query: @query, filters: @filters, sort: @sort,
7
+ @@filters = {query: @query, filters: @filters, sort: @sort,
8
8
  format: @presenter, limit: @limit, type: @type, from: @from, to: @to}
9
9
 
10
10
  def initialize(api_key, site_token, client =Client.new)
@@ -17,7 +17,7 @@ class People
17
17
 
18
18
  DIMENSIONS.each do |dimension|
19
19
  define_method dimension do |options = ""|
20
- @dimension = dimension
20
+ @dimension = dimension
21
21
  @data = options
22
22
  self
23
23
  end
@@ -34,7 +34,7 @@ class People
34
34
  @person_id = "/" + object
35
35
  @person_filter = "/" + filter
36
36
  self
37
- end
37
+ end
38
38
 
39
39
  def fetch
40
40
  data = @client.get(url)
@@ -44,11 +44,11 @@ class People
44
44
 
45
45
  def url
46
46
  array = [""]
47
- url = BASEURL + @dimension + @person_id + @person_filter +
47
+ url = BASEURL + @dimension + @person_id + @person_filter +
48
48
  "?api_key=#{@api_key}" + "&site_token=#{@site_token}"
49
49
  @@filters.each { |key, value| array << "#{key}=#{value}" if value }
50
50
  parameters=array.join('&')
51
51
  url.concat(parameters)
52
52
  end
53
53
 
54
- end
54
+ end
@@ -1,8 +1,8 @@
1
- require_relative 'client'
1
+ require_relative "client"
2
2
  class Tracking
3
3
 
4
4
  BASEURL = "https://api.gosquared.com/tracking/v1/"
5
- DIMENSIONS = %w(event identify pageview ping properties timeout transaction)
5
+ DIMENSIONS = %w(event identify pageview ping properties timeout transaction)
6
6
 
7
7
  def initialize(api_key, site_token, client=Client.new)
8
8
  @site_token = site_token
@@ -12,7 +12,7 @@ require_relative 'client'
12
12
 
13
13
  DIMENSIONS.each do |dimension|
14
14
  define_method dimension do |options|
15
- @dimension = dimension
15
+ @dimension = dimension
16
16
  @data = options
17
17
  self
18
18
  end
@@ -25,7 +25,7 @@ require_relative 'client'
25
25
  end
26
26
 
27
27
  def url
28
- url = BASEURL + @dimension + "?api_key=#{@api_key}" + "&site_token=#{@site_token}"
28
+ url = BASEURL + @dimension + "?api_key=#{@api_key}" + "&site_token=#{@site_token}"
29
29
  end
30
30
 
31
- end
31
+ end
@@ -1,9 +1,9 @@
1
- require_relative 'client'
1
+ require_relative "client"
2
2
  class Trends
3
3
 
4
4
  BASEURL = "https://api.gosquared.com/trends/v2/"
5
5
  DIMENSIONS = %w(aggregate browser category country event language organisation os page path1 product screenDimensions sources transactions)
6
- @@filters = {date_format: @date_format, from: @from, to: @to,
6
+ @@filters = {date_format: @date_format, from: @from, to: @to,
7
7
  format: @format, limit: @limit, sort: @sort, group: @group}
8
8
 
9
9
  def initialize(api_key, site_token, client=Client.new)
@@ -14,10 +14,10 @@ require_relative 'client'
14
14
 
15
15
  DIMENSIONS.each do |dimension|
16
16
  define_method dimension do
17
- @dimension = dimension
17
+ @dimension = dimension
18
18
  self
19
19
  end
20
- end
20
+ end
21
21
 
22
22
  @@filters.each do |key, value|
23
23
  define_method key do |argument|
@@ -41,4 +41,4 @@ require_relative 'client'
41
41
  parameters=array.join('&')
42
42
  url.concat(parameters)
43
43
  end
44
- end
44
+ end
@@ -0,0 +1,16 @@
1
+ require 'rails/generators/base'
2
+
3
+ module GoSquared
4
+ module Generators
5
+ class ConfigGenerator < Rails::Generators::Base
6
+ source_root File.expand_path("../templates", __FILE__)
7
+
8
+ argument :site_token
9
+
10
+ def copy_initializer_file
11
+ @site_token = site_token
12
+ template("go_squared.rb.erb", File.join("config/initializers/go_squared.rb"))
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,3 @@
1
+ GoSquared.configure do |config|
2
+ config.site_token = ENV["GOSQUARED_SITE_TOKEN"] || "<%= @site_token %>"
3
+ end
@@ -0,0 +1,39 @@
1
+ class Injector
2
+
3
+ module Filter
4
+ extend ActiveSupport::Concern
5
+ included do
6
+ append_after_filter :add_script
7
+
8
+ CLOSING_BODY_TAG = %r{</body>}
9
+
10
+ def add_script
11
+ response.body = response.body.gsub(CLOSING_BODY_TAG, "<script>
12
+ var trackingCode = function() {
13
+
14
+ !function(g,s,q,r,d){r=g[r]=g[r]||function(){(r.q=r.q||[]).push(
15
+ arguments)};d=s.createElement(q);q=s.getElementsByTagName(q)[0];
16
+ d.src='//d1l6p2sc9645hc.cloudfront.net/tracker.js';q.parentNode.
17
+ insertBefore(d,q)}(window,document,'script','_gs');
18
+ _gs('#{GoSquared.configure.site_token}'); _gs('set', 'trackLocal', true);
19
+ };
20
+
21
+ var loadTracker;
22
+ loadTracker=function(){
23
+ if(!window._gs) {
24
+ trackingCode();
25
+ } else {
26
+ delete _gs;
27
+ trackingCode();
28
+ }
29
+ };
30
+ $(document).on('page:load', loadTracker)
31
+ $(document).on('turbolinks:load', loadTracker);
32
+ </script>" + "\n </body>")
33
+
34
+ end
35
+
36
+ end
37
+ end
38
+
39
+ end
@@ -0,0 +1,8 @@
1
+ require_relative 'injector'
2
+ module GoSquared
3
+ class MyRailtie < Rails::Railtie
4
+ initializer "my_initialization" do |app|
5
+ ActionController::Base.send(:include, Injector::Filter)
6
+ end
7
+ end
8
+ end
data/spec/people_spec.rb CHANGED
@@ -1,24 +1,24 @@
1
1
  describe People do
2
2
  subject(:gs) { described_class.new("demo", "GSN-106863-S") }
3
-
4
- People::DIMENSIONS.each do |dimension|
5
- before do
3
+
4
+ People::DIMENSIONS.each do |dimension|
5
+ before do
6
6
  data = '{"a": [{"test": "response"}]}'
7
- stub_request(:get, "https://api.gosquared.com/people/v1/#{dimension}?api_key=demo&site_token=GSN-106863-S"
7
+ stub_request(:get, "https://api.gosquared.com/people/v1/#{dimension}?api_key=demo&site_token=GSN-106863-S"
8
8
  ).
9
9
  with(headers: {'Accept'=>'*/*', 'User-Agent'=>'Ruby'}).
10
10
  to_return(status: 200, body: data, headers: {})
11
11
  end
12
12
  end
13
13
 
14
- People::DIMENSIONS.each do |dimension|
14
+ People::DIMENSIONS.each do |dimension|
15
15
  it "fetches a request from the GoSquared People API with #{dimension} dimension" do
16
16
  gs.send "#{dimension}"
17
17
  expect(gs.fetch).to eq("a" => [{"test"=>"response"}])
18
18
  end
19
19
  end
20
20
 
21
- before do
21
+ before do
22
22
  data = '{"a": [{"test": "response"}, {"with": "params"}]}'
23
23
  stub_request(:get, "https://api.gosquared.com/people/v1/people/example.email@example.com/devices?api_key=demo&site_token=GSN-106863-S").
24
24
  with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Host'=>'api.gosquared.com', 'User-Agent'=>'Ruby'}).
@@ -31,8 +31,8 @@ describe People do
31
31
  end
32
32
 
33
33
 
34
- People::DIMENSIONS.each do |dimension|
35
- before do
34
+ People::DIMENSIONS.each do |dimension|
35
+ before do
36
36
  data = '{"a": [{"test": "response"}, {"with": "params"}]}'
37
37
  stub_request(:get, "https://api.gosquared.com/people/v1/#{dimension}?api_key=demo&site_token=GSN-106863-S&limit=5").
38
38
  with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Host'=>'api.gosquared.com', 'User-Agent'=>'Ruby'}).
@@ -40,7 +40,7 @@ describe People do
40
40
  end
41
41
  end
42
42
 
43
- GoSquared::People::DIMENSIONS.each do |dimension|
43
+ People::DIMENSIONS.each do |dimension|
44
44
  it "fetches a request from the GoSquared People API with dimension and paramaters" do
45
45
  gs.send("#{dimension}").limit(5)
46
46
  expect(gs.fetch).to eq("a" => [{"test"=>"response"}, {"with"=>"params"}])
@@ -48,4 +48,4 @@ describe People do
48
48
  end
49
49
 
50
50
 
51
- end
51
+ end
data/spec/trends_spec.rb CHANGED
@@ -1,8 +1,8 @@
1
- describe Trends do
1
+ describe Trends do
2
2
  subject(:gs) { described_class.new("demo","GSN-106863-S") }
3
3
 
4
- GoSquared::Trends::DIMENSIONS.each do |dimension|
5
- before do
4
+ Trends::DIMENSIONS.each do |dimension|
5
+ before do
6
6
  data = '{"a": [{"test": "response"}]}'
7
7
  stub_request(:get, "https://api.gosquared.com/trends/v2/#{dimension}?api_key=demo&site_token=GSN-106863-S").
8
8
  with(headers: {'Accept'=>'*/*', 'User-Agent'=>'Ruby'}).
@@ -10,15 +10,15 @@ GoSquared::Trends::DIMENSIONS.each do |dimension|
10
10
  end
11
11
  end
12
12
 
13
- GoSquared::Trends::DIMENSIONS.each do |dimension|
13
+ Trends::DIMENSIONS.each do |dimension|
14
14
  it "fetches a request from the GoSquared Trends API with #{dimension} dimension" do
15
15
  gs.send "#{dimension}"
16
16
  expect(gs.fetch).to eq("a" => [{"test"=>"response"}])
17
17
  end
18
18
  end
19
19
 
20
- GoSquared::Trends::DIMENSIONS.each do |dimension|
21
- before do
20
+ Trends::DIMENSIONS.each do |dimension|
21
+ before do
22
22
  data = '{"a": [{"test": "response"}, {"with": "params"}]}'
23
23
  stub_request(:get, "https://api.gosquared.com/trends/v2/#{dimension}?api_key=demo&site_token=GSN-106863-S&date_format=yyyy-mm-dd&format=json&from=2016-06-20&group=true&limit=5&site_token=GSN-106863-S&sort=visits&to=2016-06-30").
24
24
  with(:headers => {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Host'=>'api.gosquared.com', 'User-Agent'=>'Ruby'}).
@@ -26,12 +26,12 @@ GoSquared::Trends::DIMENSIONS.each do |dimension|
26
26
  end
27
27
  end
28
28
 
29
- GoSquared::Trends::DIMENSIONS.each do |dimension|
30
- it "fetches a request from the GoSquared Trends API with #{dimension} dimension and paramaters" do
31
- gs.send("#{dimension}").from('2016-06-20').to('2016-06-30')
32
- .date_format('yyyy-mm-dd').sort('visits').group(true).format('json').limit(5)
33
- expect(gs.fetch).to eq("a" => [{"test"=>"response"}, {"with"=>"params"}])
34
- end
35
- end
29
+ Trends::DIMENSIONS.each do |dimension|
30
+ it "fetches a request from the GoSquared Trends API with #{dimension} dimension and paramaters" do
31
+ gs.send("#{dimension}").from('2016-06-20').to('2016-06-30')
32
+ .date_format('yyyy-mm-dd').sort('visits').group(true).format('json').limit(5)
33
+ expect(gs.fetch).to eq("a" => [{"test"=>"response"}, {"with"=>"params"}])
34
+ end
35
+ end
36
36
 
37
- end
37
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gosquared
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Russell Vaughan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-12 00:00:00.000000000 Z
11
+ date: 2016-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -50,6 +50,7 @@ files:
50
50
  - Gemfile
51
51
  - LICENSE
52
52
  - README.md
53
+ - lib/config.rb
53
54
  - lib/gosquared.rb
54
55
  - lib/gosquared/account.rb
55
56
  - lib/gosquared/client.rb
@@ -57,6 +58,10 @@ files:
57
58
  - lib/gosquared/people.rb
58
59
  - lib/gosquared/tracking.rb
59
60
  - lib/gosquared/trends.rb
61
+ - lib/rails/generators/go_squared/config/config_generator.rb
62
+ - lib/rails/generators/go_squared/config/templates/go_squared.rb.erb
63
+ - lib/tracker_inject/injector.rb
64
+ - lib/tracker_inject/railtie.rb
60
65
  - spec/account_spec.rb
61
66
  - spec/client_spec.rb
62
67
  - spec/now_spec.rb