namely 0.0.1

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.
Files changed (68) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +3 -0
  3. data/.travis.yml +5 -0
  4. data/Gemfile +3 -0
  5. data/Gemfile.lock +51 -0
  6. data/LICENSE +22 -0
  7. data/LICENSE.txt +22 -0
  8. data/README.md +125 -0
  9. data/Rakefile +16 -0
  10. data/lib/namely.rb +114 -0
  11. data/lib/namely/authenticator.rb +164 -0
  12. data/lib/namely/country.rb +9 -0
  13. data/lib/namely/currency_type.rb +9 -0
  14. data/lib/namely/event.rb +9 -0
  15. data/lib/namely/exceptions.rb +13 -0
  16. data/lib/namely/field.rb +9 -0
  17. data/lib/namely/job_tier.rb +9 -0
  18. data/lib/namely/profile.rb +13 -0
  19. data/lib/namely/report.rb +9 -0
  20. data/lib/namely/resource_gateway.rb +81 -0
  21. data/lib/namely/restful_model.rb +150 -0
  22. data/lib/namely/version.rb +3 -0
  23. data/namely.gemspec +30 -0
  24. data/spec/fixtures/vcr_cassettes/country_head.yml +51 -0
  25. data/spec/fixtures/vcr_cassettes/country_head_missing.yml +50 -0
  26. data/spec/fixtures/vcr_cassettes/country_index.yml +121 -0
  27. data/spec/fixtures/vcr_cassettes/country_show.yml +68 -0
  28. data/spec/fixtures/vcr_cassettes/country_show_missing.yml +54 -0
  29. data/spec/fixtures/vcr_cassettes/currencytype_index.yml +64 -0
  30. data/spec/fixtures/vcr_cassettes/event_head.yml +51 -0
  31. data/spec/fixtures/vcr_cassettes/event_head_missing.yml +50 -0
  32. data/spec/fixtures/vcr_cassettes/event_index.yml +88 -0
  33. data/spec/fixtures/vcr_cassettes/event_show.yml +62 -0
  34. data/spec/fixtures/vcr_cassettes/event_show_missing.yml +54 -0
  35. data/spec/fixtures/vcr_cassettes/field_index.yml +207 -0
  36. data/spec/fixtures/vcr_cassettes/jobtier_index.yml +103 -0
  37. data/spec/fixtures/vcr_cassettes/profile_create.yml +85 -0
  38. data/spec/fixtures/vcr_cassettes/profile_create_failed.yml +54 -0
  39. data/spec/fixtures/vcr_cassettes/profile_head.yml +51 -0
  40. data/spec/fixtures/vcr_cassettes/profile_head_missing.yml +50 -0
  41. data/spec/fixtures/vcr_cassettes/profile_index.yml +979 -0
  42. data/spec/fixtures/vcr_cassettes/profile_show.yml +91 -0
  43. data/spec/fixtures/vcr_cassettes/profile_show_missing.yml +54 -0
  44. data/spec/fixtures/vcr_cassettes/profile_show_updated.yml +91 -0
  45. data/spec/fixtures/vcr_cassettes/profile_update.yml +95 -0
  46. data/spec/fixtures/vcr_cassettes/profile_update_revert.yml +95 -0
  47. data/spec/fixtures/vcr_cassettes/report_head.yml +51 -0
  48. data/spec/fixtures/vcr_cassettes/report_head_missing.yml +50 -0
  49. data/spec/fixtures/vcr_cassettes/report_show.yml +185 -0
  50. data/spec/fixtures/vcr_cassettes/report_show_missing.yml +54 -0
  51. data/spec/fixtures/vcr_cassettes/token.yml +57 -0
  52. data/spec/fixtures/vcr_cassettes/token_refresh.yml +57 -0
  53. data/spec/namely/authenticator_spec.rb +143 -0
  54. data/spec/namely/configuration_spec.rb +33 -0
  55. data/spec/namely/country_spec.rb +11 -0
  56. data/spec/namely/currency_type_spec.rb +5 -0
  57. data/spec/namely/event_spec.rb +11 -0
  58. data/spec/namely/field_spec.rb +5 -0
  59. data/spec/namely/job_tier_spec.rb +5 -0
  60. data/spec/namely/profile_spec.rb +25 -0
  61. data/spec/namely/report_spec.rb +8 -0
  62. data/spec/namely/resource_gateway_spec.rb +93 -0
  63. data/spec/shared_examples/a_model_with_a_create_action.rb +24 -0
  64. data/spec/shared_examples/a_model_with_a_show_action.rb +38 -0
  65. data/spec/shared_examples/a_model_with_an_index_action.rb +17 -0
  66. data/spec/shared_examples/a_model_with_an_update_action.rb +37 -0
  67. data/spec/spec_helper.rb +49 -0
  68. metadata +280 -0
@@ -0,0 +1,33 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::Configuration do
4
+ before :each do
5
+ unset_configuration!
6
+ end
7
+
8
+ after :each do
9
+ set_configuration!
10
+ end
11
+
12
+ it "contains a subdomain and access_token when those have been set" do
13
+ Namely.configure do |config|
14
+ config.access_token = "my_token"
15
+ config.subdomain = "my_subdomain"
16
+ end
17
+
18
+ expect(Namely.configuration.access_token).to eq "my_token"
19
+ expect(Namely.configuration.subdomain).to eq "my_subdomain"
20
+ end
21
+
22
+ it "raises an error when the configuration block hasn't been run" do
23
+ expect { Namely.configuration }.to raise_error Namely::ImproperlyConfiguredError
24
+ end
25
+
26
+ it "raises an error when variables haven't been set in the config" do
27
+ Namely.configure do
28
+ end
29
+
30
+ expect { Namely.configuration.access_token }.to raise_error Namely::ImproperlyConfiguredError
31
+ expect { Namely.configuration.subdomain }.to raise_error Namely::ImproperlyConfiguredError
32
+ end
33
+ end
@@ -0,0 +1,11 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::Country do
4
+ it_behaves_like "a model with an index action", [:id, :name, :subdivision_type]
5
+ it_behaves_like(
6
+ "a model with a show action",
7
+ id: "US",
8
+ name: "United States",
9
+ subdivision_type: "State"
10
+ )
11
+ end
@@ -0,0 +1,5 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::CurrencyType do
4
+ it_behaves_like "a model with an index action"
5
+ end
@@ -0,0 +1,11 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::Event do
4
+ it_behaves_like "a model with an index action", [:type]
5
+
6
+ it_behaves_like(
7
+ "a model with a show action",
8
+ id: "e5573698-3934-4abf-99cf-577b526d4789",
9
+ type: "recent_arrival",
10
+ )
11
+ end
@@ -0,0 +1,5 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::Field do
4
+ it_behaves_like "a model with an index action"
5
+ end
@@ -0,0 +1,5 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::JobTier do
4
+ it_behaves_like "a model with an index action", [:title]
5
+ end
@@ -0,0 +1,25 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::Profile do
4
+ it_behaves_like "a model with an index action", [:first_name, :last_name]
5
+
6
+ it_behaves_like(
7
+ "a model with a show action",
8
+ id: "20332458-c1fe-412f-bcb8-01622f04a35d",
9
+ first_name: "Leighton",
10
+ last_name: "Meester"
11
+ )
12
+
13
+ it_behaves_like(
14
+ "a model with a create action",
15
+ first_name: "Beardsly",
16
+ last_name: "McDog",
17
+ email: "beardsly-#{Time.now.utc.to_f}@namely.com"
18
+ )
19
+
20
+ it_behaves_like(
21
+ "a model with an update action",
22
+ "20332458-c1fe-412f-bcb8-01622f04a35d",
23
+ middle_name: "Beardsly"
24
+ )
25
+ end
@@ -0,0 +1,8 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::Report do
4
+ it_behaves_like(
5
+ "a model with a show action",
6
+ id: "bbf089f6-90c5-473c-8928-058014a462c9"
7
+ )
8
+ end
@@ -0,0 +1,93 @@
1
+ require "spec_helper"
2
+
3
+ describe Namely::ResourceGateway do
4
+ def gateway
5
+ @gateway ||= Namely::ResourceGateway.new(
6
+ access_token: Namely.configuration.access_token,
7
+ endpoint: "widgets",
8
+ resource_name: "widgets",
9
+ subdomain: Namely.configuration.subdomain
10
+ )
11
+ end
12
+
13
+ def valid_id
14
+ "this-is-a-valid-id"
15
+ end
16
+
17
+ def invalid_id
18
+ "this-is-not-a-valid-id"
19
+ end
20
+
21
+ describe "#json_index" do
22
+ it "returns the parsed JSON representation of #index" do
23
+ stub_request(
24
+ :get,
25
+ "https://#{Namely.configuration.subdomain}.namely.com/api/v1/widgets"
26
+ ).with(
27
+ query: {
28
+ access_token: Namely.configuration.access_token,
29
+ limit: :all
30
+ }
31
+ ).to_return(
32
+ body: "{\"widgets\": [\"woo!\"]}",
33
+ status: 200
34
+ )
35
+
36
+ expect(gateway.json_index).to eq ["woo!"]
37
+ end
38
+ end
39
+
40
+ describe "#json_show" do
41
+ it "returns the parsed JSON representation of #show" do
42
+ stub_request(
43
+ :get,
44
+ "https://#{Namely.configuration.subdomain}.namely.com/api/v1/widgets/#{valid_id}"
45
+ ).with(
46
+ query: {
47
+ access_token: Namely.configuration.access_token
48
+ }
49
+ ).to_return(
50
+ body: "{\"widgets\": [{\"name\": \"wilbur\", \"favorite_color\": \"chartreuse\"}]}",
51
+ status: 200
52
+ )
53
+
54
+ widget = gateway.json_show(valid_id)
55
+
56
+ expect(widget["name"]).to eq "wilbur"
57
+ expect(widget["favorite_color"]).to eq "chartreuse"
58
+ end
59
+ end
60
+
61
+ describe "#show_head" do
62
+ it "returns an empty response if it succeeds" do
63
+ stub_request(
64
+ :head,
65
+ "https://#{Namely.configuration.subdomain}.namely.com/api/v1/widgets/#{valid_id}"
66
+ ).with(
67
+ query: {
68
+ access_token: Namely.configuration.access_token
69
+ }
70
+ ).to_return(
71
+ body: "",
72
+ status: 200
73
+ )
74
+
75
+ expect(gateway.show_head(valid_id)).to be_empty
76
+ end
77
+
78
+ it "raises a RestClient::ResourceNotFound error if it fails" do
79
+ stub_request(
80
+ :head,
81
+ "https://#{Namely.configuration.subdomain}.namely.com/api/v1/widgets/#{invalid_id}"
82
+ ).with(
83
+ query: {
84
+ access_token: Namely.configuration.access_token
85
+ }
86
+ ).to_return(
87
+ status: 404
88
+ )
89
+
90
+ expect { gateway.show_head(invalid_id) }.to raise_error RestClient::ResourceNotFound
91
+ end
92
+ end
93
+ end
@@ -0,0 +1,24 @@
1
+ shared_examples_for "a model with a create action" do |model_attributes|
2
+ def invalid_attributes
3
+ {}
4
+ end
5
+
6
+ describe ".create" do
7
+ it "creates a model based on a hash of attributes" do
8
+ model = nil
9
+
10
+ VCR.use_cassette("#{classname}_create") do
11
+ model = described_class.create!(model_attributes)
12
+ end
13
+
14
+ expect(model).to respond_to :id
15
+ expect(model.id).not_to be_empty
16
+ end
17
+
18
+ it "raises a FailedRequestError when the create action fails" do
19
+ VCR.use_cassette("#{classname}_create_failed") do
20
+ expect { described_class.create!(invalid_attributes) }.to raise_error Namely::FailedRequestError
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,38 @@
1
+ shared_examples_for "a model with a show action" do |model_attributes|
2
+ def invalid_id
3
+ "this-is-almost-certainly-not-the-id-of-any-model"
4
+ end
5
+
6
+ describe ".find" do
7
+ it "finds a model by its unique id" do
8
+ VCR.use_cassette("#{classname}_show") do
9
+ object = described_class.find(model_attributes[:id])
10
+
11
+ expect(object).to be_a described_class
12
+ model_attributes.each do |method, value|
13
+ expect(object.public_send(method)).to eq value
14
+ end
15
+ end
16
+ end
17
+
18
+ it "raises an error if that model can't be found" do
19
+ VCR.use_cassette("#{classname}_show_missing") do
20
+ expect { described_class.find(invalid_id) }.to raise_error Namely::NoSuchModelError
21
+ end
22
+ end
23
+ end
24
+
25
+ describe ".exists?" do
26
+ it "returns true if a model exists" do
27
+ VCR.use_cassette("#{classname}_head") do
28
+ expect(described_class.exists?(model_attributes[:id])).to eq true
29
+ end
30
+ end
31
+
32
+ it "returns false if a model doesn't exist" do
33
+ VCR.use_cassette("#{classname}_head_missing") do
34
+ expect(described_class.exists?(invalid_id)).to eq false
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,17 @@
1
+ shared_examples_for "a model with an index action" do |instance_methods = []|
2
+ describe ".all" do
3
+ it "returns every model" do
4
+ VCR.use_cassette("#{classname}_index") do
5
+ objects = described_class.all
6
+
7
+ expect(objects).not_to be_empty
8
+ objects.each do |object|
9
+ expect(object).to be_a described_class
10
+ instance_methods.each do |instance_method|
11
+ expect(object).to respond_to instance_method
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,37 @@
1
+ shared_examples_for "a model with an update action" do |valid_id, changes|
2
+ describe "#update" do
3
+ it "updates an existing object" do
4
+ model = nil
5
+ original_values = nil
6
+
7
+ VCR.use_cassette("#{classname}_show") do
8
+ model = described_class.find(valid_id)
9
+ end
10
+
11
+ changes.each do |attribute, value|
12
+ expect(model[attribute]).not_to eq value
13
+ end
14
+
15
+ original_values = model.to_h.select { |attribute, _| changes.keys.include?(attribute) }
16
+
17
+ VCR.use_cassette("#{classname}_update") do
18
+ model.update(changes)
19
+ end
20
+
21
+ VCR.use_cassette("#{classname}_show_updated") do
22
+ model = described_class.find(valid_id)
23
+ end
24
+ changes.each do |attribute, value|
25
+ expect(model[attribute]).to eq value
26
+ end
27
+
28
+ revert_changes(model, original_values)
29
+ end
30
+ end
31
+
32
+ def revert_changes(model, original_values)
33
+ VCR.use_cassette("#{classname}_update_revert") do
34
+ model.update(original_values)
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,49 @@
1
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
2
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
3
+
4
+ Dir[File.join(File.dirname(__FILE__), "shared_examples", "*")].each { |f| require f }
5
+
6
+ require "namely"
7
+ require "dotenv"
8
+ require "vcr"
9
+ require "webmock/rspec"
10
+
11
+ Dotenv.load
12
+
13
+ VCR.configure do |config|
14
+ config.cassette_library_dir = "spec/fixtures/vcr_cassettes"
15
+ config.hook_into :webmock
16
+
17
+ environment_variables = [
18
+ "AUTH_CODE",
19
+ "CLIENT_ID",
20
+ "CLIENT_REDIRECT_URI",
21
+ "CLIENT_SECRET",
22
+ "TEST_ACCESS_TOKEN",
23
+ "TEST_REFRESH_TOKEN",
24
+ "TEST_SUBDOMAIN",
25
+ ]
26
+
27
+ environment_variables.each do |env_var|
28
+ config.filter_sensitive_data("<#{env_var}>") do
29
+ ENV.fetch(env_var)
30
+ end
31
+ end
32
+ end
33
+
34
+ def classname
35
+ described_class.name.split("::").last.downcase
36
+ end
37
+
38
+ def set_configuration!
39
+ Namely.configure do |config|
40
+ config.access_token = ENV.fetch("TEST_ACCESS_TOKEN")
41
+ config.subdomain = ENV.fetch("TEST_SUBDOMAIN")
42
+ end
43
+ end
44
+
45
+ def unset_configuration!
46
+ Namely.configuration = nil
47
+ end
48
+
49
+ set_configuration!
metadata ADDED
@@ -0,0 +1,280 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: namely
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Harry Schwartz
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-11-05 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: backports
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rest_client
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: bundler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.7'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.7'
55
+ - !ruby/object:Gem::Dependency
56
+ name: dotenv
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '10.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '10.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: vcr
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: webmock
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: yard
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ description:
140
+ email:
141
+ - harry@thoughtbot.com
142
+ executables: []
143
+ extensions: []
144
+ extra_rdoc_files: []
145
+ files:
146
+ - ".gitignore"
147
+ - ".travis.yml"
148
+ - Gemfile
149
+ - Gemfile.lock
150
+ - LICENSE
151
+ - LICENSE.txt
152
+ - README.md
153
+ - Rakefile
154
+ - lib/namely.rb
155
+ - lib/namely/authenticator.rb
156
+ - lib/namely/country.rb
157
+ - lib/namely/currency_type.rb
158
+ - lib/namely/event.rb
159
+ - lib/namely/exceptions.rb
160
+ - lib/namely/field.rb
161
+ - lib/namely/job_tier.rb
162
+ - lib/namely/profile.rb
163
+ - lib/namely/report.rb
164
+ - lib/namely/resource_gateway.rb
165
+ - lib/namely/restful_model.rb
166
+ - lib/namely/version.rb
167
+ - namely.gemspec
168
+ - spec/fixtures/vcr_cassettes/country_head.yml
169
+ - spec/fixtures/vcr_cassettes/country_head_missing.yml
170
+ - spec/fixtures/vcr_cassettes/country_index.yml
171
+ - spec/fixtures/vcr_cassettes/country_show.yml
172
+ - spec/fixtures/vcr_cassettes/country_show_missing.yml
173
+ - spec/fixtures/vcr_cassettes/currencytype_index.yml
174
+ - spec/fixtures/vcr_cassettes/event_head.yml
175
+ - spec/fixtures/vcr_cassettes/event_head_missing.yml
176
+ - spec/fixtures/vcr_cassettes/event_index.yml
177
+ - spec/fixtures/vcr_cassettes/event_show.yml
178
+ - spec/fixtures/vcr_cassettes/event_show_missing.yml
179
+ - spec/fixtures/vcr_cassettes/field_index.yml
180
+ - spec/fixtures/vcr_cassettes/jobtier_index.yml
181
+ - spec/fixtures/vcr_cassettes/profile_create.yml
182
+ - spec/fixtures/vcr_cassettes/profile_create_failed.yml
183
+ - spec/fixtures/vcr_cassettes/profile_head.yml
184
+ - spec/fixtures/vcr_cassettes/profile_head_missing.yml
185
+ - spec/fixtures/vcr_cassettes/profile_index.yml
186
+ - spec/fixtures/vcr_cassettes/profile_show.yml
187
+ - spec/fixtures/vcr_cassettes/profile_show_missing.yml
188
+ - spec/fixtures/vcr_cassettes/profile_show_updated.yml
189
+ - spec/fixtures/vcr_cassettes/profile_update.yml
190
+ - spec/fixtures/vcr_cassettes/profile_update_revert.yml
191
+ - spec/fixtures/vcr_cassettes/report_head.yml
192
+ - spec/fixtures/vcr_cassettes/report_head_missing.yml
193
+ - spec/fixtures/vcr_cassettes/report_show.yml
194
+ - spec/fixtures/vcr_cassettes/report_show_missing.yml
195
+ - spec/fixtures/vcr_cassettes/token.yml
196
+ - spec/fixtures/vcr_cassettes/token_refresh.yml
197
+ - spec/namely/authenticator_spec.rb
198
+ - spec/namely/configuration_spec.rb
199
+ - spec/namely/country_spec.rb
200
+ - spec/namely/currency_type_spec.rb
201
+ - spec/namely/event_spec.rb
202
+ - spec/namely/field_spec.rb
203
+ - spec/namely/job_tier_spec.rb
204
+ - spec/namely/profile_spec.rb
205
+ - spec/namely/report_spec.rb
206
+ - spec/namely/resource_gateway_spec.rb
207
+ - spec/shared_examples/a_model_with_a_create_action.rb
208
+ - spec/shared_examples/a_model_with_a_show_action.rb
209
+ - spec/shared_examples/a_model_with_an_index_action.rb
210
+ - spec/shared_examples/a_model_with_an_update_action.rb
211
+ - spec/spec_helper.rb
212
+ homepage: https://github.com/namely/ruby-client
213
+ licenses:
214
+ - MIT
215
+ metadata: {}
216
+ post_install_message:
217
+ rdoc_options: []
218
+ require_paths:
219
+ - lib
220
+ required_ruby_version: !ruby/object:Gem::Requirement
221
+ requirements:
222
+ - - ">="
223
+ - !ruby/object:Gem::Version
224
+ version: '0'
225
+ required_rubygems_version: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
230
+ requirements: []
231
+ rubyforge_project:
232
+ rubygems_version: 2.2.2
233
+ signing_key:
234
+ specification_version: 4
235
+ summary: Wraps the Namely HTTP API in lovely Ruby.
236
+ test_files:
237
+ - spec/fixtures/vcr_cassettes/country_head.yml
238
+ - spec/fixtures/vcr_cassettes/country_head_missing.yml
239
+ - spec/fixtures/vcr_cassettes/country_index.yml
240
+ - spec/fixtures/vcr_cassettes/country_show.yml
241
+ - spec/fixtures/vcr_cassettes/country_show_missing.yml
242
+ - spec/fixtures/vcr_cassettes/currencytype_index.yml
243
+ - spec/fixtures/vcr_cassettes/event_head.yml
244
+ - spec/fixtures/vcr_cassettes/event_head_missing.yml
245
+ - spec/fixtures/vcr_cassettes/event_index.yml
246
+ - spec/fixtures/vcr_cassettes/event_show.yml
247
+ - spec/fixtures/vcr_cassettes/event_show_missing.yml
248
+ - spec/fixtures/vcr_cassettes/field_index.yml
249
+ - spec/fixtures/vcr_cassettes/jobtier_index.yml
250
+ - spec/fixtures/vcr_cassettes/profile_create.yml
251
+ - spec/fixtures/vcr_cassettes/profile_create_failed.yml
252
+ - spec/fixtures/vcr_cassettes/profile_head.yml
253
+ - spec/fixtures/vcr_cassettes/profile_head_missing.yml
254
+ - spec/fixtures/vcr_cassettes/profile_index.yml
255
+ - spec/fixtures/vcr_cassettes/profile_show.yml
256
+ - spec/fixtures/vcr_cassettes/profile_show_missing.yml
257
+ - spec/fixtures/vcr_cassettes/profile_show_updated.yml
258
+ - spec/fixtures/vcr_cassettes/profile_update.yml
259
+ - spec/fixtures/vcr_cassettes/profile_update_revert.yml
260
+ - spec/fixtures/vcr_cassettes/report_head.yml
261
+ - spec/fixtures/vcr_cassettes/report_head_missing.yml
262
+ - spec/fixtures/vcr_cassettes/report_show.yml
263
+ - spec/fixtures/vcr_cassettes/report_show_missing.yml
264
+ - spec/fixtures/vcr_cassettes/token.yml
265
+ - spec/fixtures/vcr_cassettes/token_refresh.yml
266
+ - spec/namely/authenticator_spec.rb
267
+ - spec/namely/configuration_spec.rb
268
+ - spec/namely/country_spec.rb
269
+ - spec/namely/currency_type_spec.rb
270
+ - spec/namely/event_spec.rb
271
+ - spec/namely/field_spec.rb
272
+ - spec/namely/job_tier_spec.rb
273
+ - spec/namely/profile_spec.rb
274
+ - spec/namely/report_spec.rb
275
+ - spec/namely/resource_gateway_spec.rb
276
+ - spec/shared_examples/a_model_with_a_create_action.rb
277
+ - spec/shared_examples/a_model_with_a_show_action.rb
278
+ - spec/shared_examples/a_model_with_an_index_action.rb
279
+ - spec/shared_examples/a_model_with_an_update_action.rb
280
+ - spec/spec_helper.rb