addresses 2.0 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/addresses/cities_controller.rb +0 -2
  3. data/app/controllers/addresses/countries_controller.rb +17 -0
  4. data/app/controllers/addresses/neighborhoods_controller.rb +6 -4
  5. data/app/controllers/addresses/regions_controller.rb +17 -0
  6. data/app/controllers/addresses/states_controller.rb +6 -1
  7. data/app/models/addresses/city.rb +14 -12
  8. data/app/models/addresses/country.rb +8 -1
  9. data/app/models/addresses/neighborhood.rb +6 -2
  10. data/app/models/addresses/region.rb +16 -0
  11. data/app/models/addresses/state.rb +5 -2
  12. data/config/routes.rb +4 -2
  13. data/db/migrate/20191010233002_create_addresses_regions.rb +15 -0
  14. data/db/migrate/20191010233144_add_indexes_to_regions.rb +8 -0
  15. data/db/migrate/20191010233512_add_capital_to_addresses_state.rb +7 -0
  16. data/db/migrate/20191010233947_add_region_id_to_addresses_states.rb +7 -0
  17. data/db/migrate/20191010234112_add_latitude_and_longitude_to_addresses_address.rb +10 -0
  18. data/db/migrate/20191010235008_add_latitude_and_longitude_to_addresses_country.rb +10 -0
  19. data/db/migrate/20191010235050_add_latitude_and_longitude_to_addresses_states.rb +10 -0
  20. data/db/migrate/20191010235112_add_latitude_and_longitude_to_addresses_cities.rb +10 -0
  21. data/db/migrate/20191010235129_add_latitude_and_longitude_to_addresses_neighborhoods.rb +10 -0
  22. data/db/migrate/20191010235145_add_latitude_and_longitude_to_addresses_zipcodes.rb +10 -0
  23. data/spec/controllers/addresses/states_controller_spec.rb +3 -2
  24. data/spec/dummy/Gemfile.lock +3 -3
  25. data/spec/dummy/app/assets/config/manifest.js +2 -0
  26. data/spec/dummy/db/development.sqlite3 +0 -0
  27. data/spec/dummy/db/migrate/{20191008054118_create_addresses_countries.addresses.rb → 20191011003823_create_addresses_countries.addresses.rb} +0 -0
  28. data/spec/dummy/db/migrate/{20191008054119_create_addresses_states.addresses.rb → 20191011003824_create_addresses_states.addresses.rb} +0 -0
  29. data/spec/dummy/db/migrate/{20191008054120_create_addresses_cities.addresses.rb → 20191011003825_create_addresses_cities.addresses.rb} +0 -0
  30. data/spec/dummy/db/migrate/{20191008054121_create_addresses_neighborhoods.addresses.rb → 20191011003826_create_addresses_neighborhoods.addresses.rb} +0 -0
  31. data/spec/dummy/db/migrate/{20191008054122_create_addresses_addresses.addresses.rb → 20191011003827_create_addresses_addresses.addresses.rb} +0 -0
  32. data/spec/dummy/db/migrate/{20191008054123_create_addresses_zipcodes.addresses.rb → 20191011003828_create_addresses_zipcodes.addresses.rb} +0 -0
  33. data/spec/dummy/db/migrate/{20191008054124_remove_zipcode_attributes_from_addresses.addresses.rb → 20191011003829_remove_zipcode_attributes_from_addresses.addresses.rb} +0 -0
  34. data/spec/dummy/db/migrate/{20191008054125_add_indexes.addresses.rb → 20191011003830_add_indexes.addresses.rb} +0 -0
  35. data/spec/dummy/db/migrate/20191011003831_create_addresses_regions.addresses.rb +16 -0
  36. data/spec/dummy/db/migrate/20191011003832_add_indexes_to_regions.addresses.rb +9 -0
  37. data/spec/dummy/db/migrate/20191011003833_add_capital_to_addresses_state.addresses.rb +8 -0
  38. data/spec/dummy/db/migrate/20191011003834_add_region_id_to_addresses_states.addresses.rb +8 -0
  39. data/spec/dummy/db/migrate/20191011003835_add_latitude_and_longitude_to_addresses_address.addresses.rb +11 -0
  40. data/spec/dummy/db/migrate/20191011003836_add_latitude_and_longitude_to_addresses_country.addresses.rb +11 -0
  41. data/spec/dummy/db/migrate/20191011003837_add_latitude_and_longitude_to_addresses_states.addresses.rb +11 -0
  42. data/spec/dummy/db/migrate/20191011003838_add_latitude_and_longitude_to_addresses_cities.addresses.rb +11 -0
  43. data/spec/dummy/db/migrate/20191011003839_add_latitude_and_longitude_to_addresses_neighborhoods.addresses.rb +11 -0
  44. data/spec/dummy/db/migrate/20191011003840_add_latitude_and_longitude_to_addresses_zipcodes.addresses.rb +11 -0
  45. data/spec/dummy/db/schema.rb +41 -1
  46. data/spec/dummy/db/test.sqlite3 +0 -0
  47. data/spec/dummy/log/development.log +1137 -0
  48. data/spec/dummy/log/test.log +8159 -0
  49. data/spec/factories/regions.rb +9 -0
  50. data/spec/models/addresses/city_spec.rb +2 -2
  51. data/spec/models/addresses/region_spec.rb +10 -0
  52. data/spec/requests/countries_spec.rb +31 -0
  53. data/spec/requests/neighborhoods_spec.rb +12 -0
  54. data/spec/requests/regions_spec.rb +31 -0
  55. data/spec/requests/states_spec.rb +31 -0
  56. metadata +63 -18
@@ -0,0 +1,9 @@
1
+ # Read about factories at https://github.com/thoughtbot/factory_girl
2
+
3
+ FactoryBot.define do
4
+ factory :region, class: Addresses::Region do
5
+ name { 'Nordeste' }
6
+ acronym { 'NE' }
7
+ association :country
8
+ end
9
+ end
@@ -11,10 +11,10 @@ RSpec.describe Addresses::City, :type => :model do
11
11
  let!(:state) { create :state }
12
12
  let!(:state2) { create :state }
13
13
  let!(:city) { create :city, state: state, name: 'Natal' }
14
- let!(:city2) { create :city, state: state2, name: 'São Paulo' }
14
+ let!(:city2) { create :city, state: state2, name: 'Feliz Natal' }
15
15
 
16
16
  it { expect(Addresses::City.filter).to eq([]) }
17
- it { expect(Addresses::City.filter(name: 'paulo').all).to eq([city2]) }
17
+ it { expect(Addresses::City.filter(name: 'Nat').all).to eq([city]) }
18
18
  end
19
19
  end
20
20
  end
@@ -0,0 +1,10 @@
1
+ require 'rails_helper'
2
+
3
+ module Addresses
4
+ RSpec.describe Region, type: :model do
5
+ describe 'association' do
6
+ it { is_expected.to belong_to(:country) }
7
+ it { is_expected.to have_many(:states) }
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe Addresses::CountriesController, type: :request do
5
+ let!(:country) { create :country }
6
+ let!(:country2) { create :country }
7
+
8
+ describe "GET /countries" do
9
+ before { get '/addresses/countries', params: { format: "json" } }
10
+
11
+ it "should return an list of countries" do
12
+ json = JSON.parse(response.body)
13
+
14
+ expect(response.status).to be(200)
15
+ expect(json.size).to eq(2)
16
+ expect(json[0]["name"]).to eq(country.name)
17
+ end
18
+ end
19
+
20
+ describe "GET /countries/:id" do
21
+ before { get "/addresses/countries/#{country.id}", params: { format: "json" } }
22
+
23
+ it "should return a specific country" do
24
+ json = JSON.parse(response.body)
25
+
26
+ expect(response.status).to be(200)
27
+ expect(json["id"]).to eq(country.id)
28
+ expect(json["name"]).to eq(country.name)
29
+ end
30
+ end
31
+ end
@@ -15,4 +15,16 @@ RSpec.describe Addresses::NeighborhoodsController, type: :request do
15
15
  expect(json[0]["name"]).to eq(neighborhood.name)
16
16
  end
17
17
  end
18
+
19
+ describe "GET /neighborhoods/:id" do
20
+ before { get "/addresses/neighborhoods/#{neighborhood.id}", params: { format: "json" } }
21
+
22
+ it "should return a specific neighborhood" do
23
+ json = JSON.parse(response.body)
24
+
25
+ expect(response.status).to be(200)
26
+ expect(json["id"]).to eq(neighborhood.id)
27
+ expect(json["name"]).to eq(neighborhood.name)
28
+ end
29
+ end
18
30
  end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe Addresses::RegionsController, type: :request do
5
+ let!(:country) { create :country }
6
+ let!(:region) { create :region, country: country }
7
+
8
+ describe "GET /regions" do
9
+ before { get '/addresses/regions', params: { country_id: country.id, format: "json" } }
10
+
11
+ it "should return an list of regions" do
12
+ json = JSON.parse(response.body)
13
+
14
+ expect(response.status).to be(200)
15
+ expect(json.size).to eq(1)
16
+ expect(json[0]["name"]).to eq(region.name)
17
+ end
18
+ end
19
+
20
+ describe "GET /regions/:id" do
21
+ before { get "/addresses/regions/#{region.id}", params: { format: "json" } }
22
+
23
+ it "should return a specific region" do
24
+ json = JSON.parse(response.body)
25
+
26
+ expect(response.status).to be(200)
27
+ expect(json["id"]).to eq(region.id)
28
+ expect(json["name"]).to eq(region.name)
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe Addresses::StatesController, type: :request do
5
+ let!(:country) { create :country }
6
+ let!(:state) { create :state, country: country }
7
+
8
+ describe "GET /states" do
9
+ before { get '/addresses/states', params: { country_id: country.id, format: "json" } }
10
+
11
+ it "should return an list of states" do
12
+ json = JSON.parse(response.body)
13
+
14
+ expect(response.status).to be(200)
15
+ expect(json.size).to eq(1)
16
+ expect(json[0]["name"]).to eq(state.name)
17
+ end
18
+ end
19
+
20
+ describe "GET /states/:id" do
21
+ before { get "/addresses/states/#{state.id}", params: { format: "json" } }
22
+
23
+ it "should return a specific state" do
24
+ json = JSON.parse(response.body)
25
+
26
+ expect(response.status).to be(200)
27
+ expect(json["id"]).to eq(state.id)
28
+ expect(json["name"]).to eq(state.name)
29
+ end
30
+ end
31
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: addresses
3
3
  version: !ruby/object:Gem::Version
4
- version: '2.0'
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wilbert Ribeiro
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-10-08 00:00:00.000000000 Z
12
+ date: 2019-10-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -66,13 +66,16 @@ files:
66
66
  - Rakefile
67
67
  - app/controllers/addresses/application_controller.rb
68
68
  - app/controllers/addresses/cities_controller.rb
69
+ - app/controllers/addresses/countries_controller.rb
69
70
  - app/controllers/addresses/neighborhoods_controller.rb
71
+ - app/controllers/addresses/regions_controller.rb
70
72
  - app/controllers/addresses/states_controller.rb
71
73
  - app/controllers/addresses/zipcodes_controller.rb
72
74
  - app/models/addresses/address.rb
73
75
  - app/models/addresses/city.rb
74
76
  - app/models/addresses/country.rb
75
77
  - app/models/addresses/neighborhood.rb
78
+ - app/models/addresses/region.rb
76
79
  - app/models/addresses/state.rb
77
80
  - app/models/addresses/zipcode.rb
78
81
  - config/routes.rb
@@ -84,6 +87,16 @@ files:
84
87
  - db/migrate/20160920172944_create_addresses_zipcodes.rb
85
88
  - db/migrate/20160920174406_remove_zipcode_attributes_from_addresses.rb
86
89
  - db/migrate/20191008052817_add_indexes.rb
90
+ - db/migrate/20191010233002_create_addresses_regions.rb
91
+ - db/migrate/20191010233144_add_indexes_to_regions.rb
92
+ - db/migrate/20191010233512_add_capital_to_addresses_state.rb
93
+ - db/migrate/20191010233947_add_region_id_to_addresses_states.rb
94
+ - db/migrate/20191010234112_add_latitude_and_longitude_to_addresses_address.rb
95
+ - db/migrate/20191010235008_add_latitude_and_longitude_to_addresses_country.rb
96
+ - db/migrate/20191010235050_add_latitude_and_longitude_to_addresses_states.rb
97
+ - db/migrate/20191010235112_add_latitude_and_longitude_to_addresses_cities.rb
98
+ - db/migrate/20191010235129_add_latitude_and_longitude_to_addresses_neighborhoods.rb
99
+ - db/migrate/20191010235145_add_latitude_and_longitude_to_addresses_zipcodes.rb
87
100
  - lib/addresses.rb
88
101
  - lib/addresses/engine.rb
89
102
  - lib/tasks/addresses_tasks.rake
@@ -100,6 +113,7 @@ files:
100
113
  - spec/dummy/Gemfile.lock
101
114
  - spec/dummy/README.rdoc
102
115
  - spec/dummy/Rakefile
116
+ - spec/dummy/app/assets/config/manifest.js
103
117
  - spec/dummy/app/assets/javascripts/application.js
104
118
  - spec/dummy/app/assets/stylesheets/application.css
105
119
  - spec/dummy/app/controllers/application_controller.rb
@@ -127,14 +141,24 @@ files:
127
141
  - spec/dummy/config/locales/pt-BR.yml
128
142
  - spec/dummy/config/routes.rb
129
143
  - spec/dummy/db/development.sqlite3
130
- - spec/dummy/db/migrate/20191008054118_create_addresses_countries.addresses.rb
131
- - spec/dummy/db/migrate/20191008054119_create_addresses_states.addresses.rb
132
- - spec/dummy/db/migrate/20191008054120_create_addresses_cities.addresses.rb
133
- - spec/dummy/db/migrate/20191008054121_create_addresses_neighborhoods.addresses.rb
134
- - spec/dummy/db/migrate/20191008054122_create_addresses_addresses.addresses.rb
135
- - spec/dummy/db/migrate/20191008054123_create_addresses_zipcodes.addresses.rb
136
- - spec/dummy/db/migrate/20191008054124_remove_zipcode_attributes_from_addresses.addresses.rb
137
- - spec/dummy/db/migrate/20191008054125_add_indexes.addresses.rb
144
+ - spec/dummy/db/migrate/20191011003823_create_addresses_countries.addresses.rb
145
+ - spec/dummy/db/migrate/20191011003824_create_addresses_states.addresses.rb
146
+ - spec/dummy/db/migrate/20191011003825_create_addresses_cities.addresses.rb
147
+ - spec/dummy/db/migrate/20191011003826_create_addresses_neighborhoods.addresses.rb
148
+ - spec/dummy/db/migrate/20191011003827_create_addresses_addresses.addresses.rb
149
+ - spec/dummy/db/migrate/20191011003828_create_addresses_zipcodes.addresses.rb
150
+ - spec/dummy/db/migrate/20191011003829_remove_zipcode_attributes_from_addresses.addresses.rb
151
+ - spec/dummy/db/migrate/20191011003830_add_indexes.addresses.rb
152
+ - spec/dummy/db/migrate/20191011003831_create_addresses_regions.addresses.rb
153
+ - spec/dummy/db/migrate/20191011003832_add_indexes_to_regions.addresses.rb
154
+ - spec/dummy/db/migrate/20191011003833_add_capital_to_addresses_state.addresses.rb
155
+ - spec/dummy/db/migrate/20191011003834_add_region_id_to_addresses_states.addresses.rb
156
+ - spec/dummy/db/migrate/20191011003835_add_latitude_and_longitude_to_addresses_address.addresses.rb
157
+ - spec/dummy/db/migrate/20191011003836_add_latitude_and_longitude_to_addresses_country.addresses.rb
158
+ - spec/dummy/db/migrate/20191011003837_add_latitude_and_longitude_to_addresses_states.addresses.rb
159
+ - spec/dummy/db/migrate/20191011003838_add_latitude_and_longitude_to_addresses_cities.addresses.rb
160
+ - spec/dummy/db/migrate/20191011003839_add_latitude_and_longitude_to_addresses_neighborhoods.addresses.rb
161
+ - spec/dummy/db/migrate/20191011003840_add_latitude_and_longitude_to_addresses_zipcodes.addresses.rb
138
162
  - spec/dummy/db/schema.rb
139
163
  - spec/dummy/db/test.sqlite3
140
164
  - spec/dummy/log/development.log
@@ -147,6 +171,7 @@ files:
147
171
  - spec/factories/cities.rb
148
172
  - spec/factories/countries.rb
149
173
  - spec/factories/neighborhoods.rb
174
+ - spec/factories/regions.rb
150
175
  - spec/factories/states.rb
151
176
  - spec/factories/zipcodes.rb
152
177
  - spec/fixtures/vcr_cassettes/Addresses_Zipcode/_find_or_create_by_service/when_the_zipcode_not_exists_in_database/and_the_zipcode_was_not_found_in_web_service/1_3_2_2_1.yml
@@ -168,11 +193,15 @@ files:
168
193
  - spec/models/addresses/city_spec.rb
169
194
  - spec/models/addresses/country_spec.rb
170
195
  - spec/models/addresses/neighborhood_spec.rb
196
+ - spec/models/addresses/region_spec.rb
171
197
  - spec/models/addresses/state_spec.rb
172
198
  - spec/models/addresses/zipcode_spec.rb
173
199
  - spec/rails_helper.rb
174
200
  - spec/requests/cities_spec.rb
201
+ - spec/requests/countries_spec.rb
175
202
  - spec/requests/neighborhoods_spec.rb
203
+ - spec/requests/regions_spec.rb
204
+ - spec/requests/states_spec.rb
176
205
  - spec/requests/zipcodes_spec.rb
177
206
  - spec/routing/cities_routing_spec.rb
178
207
  - spec/routing/neighborhoods_routing_spec.rb
@@ -203,6 +232,7 @@ summary: This engine allows create default addresses models for any usage.
203
232
  test_files:
204
233
  - spec/dummy/app/controllers/application_controller.rb
205
234
  - spec/dummy/app/views/layouts/application.html.erb
235
+ - spec/dummy/app/assets/config/manifest.js
206
236
  - spec/dummy/app/assets/javascripts/application.js
207
237
  - spec/dummy/app/assets/stylesheets/application.css
208
238
  - spec/dummy/app/helpers/application_helper.rb
@@ -234,14 +264,24 @@ test_files:
234
264
  - spec/dummy/public/404.html
235
265
  - spec/dummy/db/schema.rb
236
266
  - spec/dummy/db/test.sqlite3
237
- - spec/dummy/db/migrate/20191008054121_create_addresses_neighborhoods.addresses.rb
238
- - spec/dummy/db/migrate/20191008054124_remove_zipcode_attributes_from_addresses.addresses.rb
239
- - spec/dummy/db/migrate/20191008054119_create_addresses_states.addresses.rb
240
- - spec/dummy/db/migrate/20191008054120_create_addresses_cities.addresses.rb
241
- - spec/dummy/db/migrate/20191008054123_create_addresses_zipcodes.addresses.rb
242
- - spec/dummy/db/migrate/20191008054125_add_indexes.addresses.rb
243
- - spec/dummy/db/migrate/20191008054118_create_addresses_countries.addresses.rb
244
- - spec/dummy/db/migrate/20191008054122_create_addresses_addresses.addresses.rb
267
+ - spec/dummy/db/migrate/20191011003827_create_addresses_addresses.addresses.rb
268
+ - spec/dummy/db/migrate/20191011003824_create_addresses_states.addresses.rb
269
+ - spec/dummy/db/migrate/20191011003840_add_latitude_and_longitude_to_addresses_zipcodes.addresses.rb
270
+ - spec/dummy/db/migrate/20191011003831_create_addresses_regions.addresses.rb
271
+ - spec/dummy/db/migrate/20191011003826_create_addresses_neighborhoods.addresses.rb
272
+ - spec/dummy/db/migrate/20191011003837_add_latitude_and_longitude_to_addresses_states.addresses.rb
273
+ - spec/dummy/db/migrate/20191011003830_add_indexes.addresses.rb
274
+ - spec/dummy/db/migrate/20191011003823_create_addresses_countries.addresses.rb
275
+ - spec/dummy/db/migrate/20191011003839_add_latitude_and_longitude_to_addresses_neighborhoods.addresses.rb
276
+ - spec/dummy/db/migrate/20191011003829_remove_zipcode_attributes_from_addresses.addresses.rb
277
+ - spec/dummy/db/migrate/20191011003834_add_region_id_to_addresses_states.addresses.rb
278
+ - spec/dummy/db/migrate/20191011003838_add_latitude_and_longitude_to_addresses_cities.addresses.rb
279
+ - spec/dummy/db/migrate/20191011003832_add_indexes_to_regions.addresses.rb
280
+ - spec/dummy/db/migrate/20191011003835_add_latitude_and_longitude_to_addresses_address.addresses.rb
281
+ - spec/dummy/db/migrate/20191011003825_create_addresses_cities.addresses.rb
282
+ - spec/dummy/db/migrate/20191011003836_add_latitude_and_longitude_to_addresses_country.addresses.rb
283
+ - spec/dummy/db/migrate/20191011003833_add_capital_to_addresses_state.addresses.rb
284
+ - spec/dummy/db/migrate/20191011003828_create_addresses_zipcodes.addresses.rb
245
285
  - spec/dummy/db/development.sqlite3
246
286
  - spec/dummy/Gemfile
247
287
  - spec/dummy/log/test.log
@@ -251,16 +291,21 @@ test_files:
251
291
  - spec/models/addresses/country_spec.rb
252
292
  - spec/models/addresses/state_spec.rb
253
293
  - spec/models/addresses/neighborhood_spec.rb
294
+ - spec/models/addresses/region_spec.rb
254
295
  - spec/models/addresses/city_spec.rb
255
296
  - spec/models/addresses/zipcode_spec.rb
256
297
  - spec/models/addresses/address_spec.rb
257
298
  - spec/requests/neighborhoods_spec.rb
258
299
  - spec/requests/cities_spec.rb
259
300
  - spec/requests/zipcodes_spec.rb
301
+ - spec/requests/countries_spec.rb
302
+ - spec/requests/states_spec.rb
303
+ - spec/requests/regions_spec.rb
260
304
  - spec/factories/addresses.rb
261
305
  - spec/factories/states.rb
262
306
  - spec/factories/cities.rb
263
307
  - spec/factories/zipcodes.rb
308
+ - spec/factories/regions.rb
264
309
  - spec/factories/neighborhoods.rb
265
310
  - spec/factories/countries.rb
266
311
  - spec/fixtures/vcr_cassettes/Addresses_ZipcodesController/GET_show/passing_a_invalid_zipcode/1_1_2_1.yml