ibge-ruby 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/.rspec +3 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +79 -0
- data/README.md +155 -0
- data/Rakefile +1 -0
- data/ibge-ruby.gemspec +28 -0
- data/lib/ibge/distrito.rb +179 -0
- data/lib/ibge/mesorregiao.rb +92 -0
- data/lib/ibge/microrregiao.rb +110 -0
- data/lib/ibge/municipio.rb +164 -0
- data/lib/ibge/pais.rb +53 -0
- data/lib/ibge/regiao.rb +55 -0
- data/lib/ibge/regiao_imediata.rb +110 -0
- data/lib/ibge/regiao_intermediaria.rb +92 -0
- data/lib/ibge/subdistrito.rb +160 -0
- data/lib/ibge/uf.rb +73 -0
- data/lib/ibge/utils.rb +7 -0
- data/lib/ibge/version.rb +3 -0
- data/lib/ibge.rb +18 -0
- data/spec/lib/ibge/distrito_spec.rb +250 -0
- data/spec/lib/ibge/mesorregiao_spec.rb +144 -0
- data/spec/lib/ibge/microrregiao_spec.rb +166 -0
- data/spec/lib/ibge/municipio_spec.rb +228 -0
- data/spec/lib/ibge/pais_spec.rb +62 -0
- data/spec/lib/ibge/regiao_imediata_spec.rb +162 -0
- data/spec/lib/ibge/regiao_intermediaria_spec.rb +140 -0
- data/spec/lib/ibge/regiao_spec.rb +90 -0
- data/spec/lib/ibge/subdistrito_spec.rb +228 -0
- data/spec/lib/ibge/uf_spec.rb +130 -0
- data/spec/spec_helper.rb +28 -0
- data/spec/vcr_cassettes/distrito/distritos_por_id_230440005.yml +55 -0
- data/spec/vcr_cassettes/distrito/distritos_por_id_230440005_230370905.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_mesorregiao_2303.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_mesorregiao_2303_2304.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_microrregiao_23016.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_microrregiao_23016_23017.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_municipio_2307254.yml +53 -0
- data/spec/vcr_cassettes/distrito/distritos_por_municipio_2307254_2302206.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_regiao_NE.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_regiao_N_NE.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_regiao_imediata_230001.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_regiao_imediata_230001_230002.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_regiao_intermediaria_2301.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_regiao_intermediaria_2301_2302.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_uf_BA_CE.yml +47 -0
- data/spec/vcr_cassettes/distrito/distritos_por_uf_CE.yml +51 -0
- data/spec/vcr_cassettes/distrito/obter_distritos.yml +55 -0
- data/spec/vcr_cassettes/mesorregiao/mesorregioes_por_id_2303.yml +47 -0
- data/spec/vcr_cassettes/mesorregiao/mesorregioes_por_id_2303_2304.yml +47 -0
- data/spec/vcr_cassettes/mesorregiao/mesorregioes_por_regiao_NE.yml +53 -0
- data/spec/vcr_cassettes/mesorregiao/mesorregioes_por_regiao_N_NE.yml +47 -0
- data/spec/vcr_cassettes/mesorregiao/mesorregioes_por_uf_BA_CE.yml +47 -0
- data/spec/vcr_cassettes/mesorregiao/mesorregioes_por_uf_CE.yml +49 -0
- data/spec/vcr_cassettes/mesorregiao/obter_mesorregioes.yml +55 -0
- data/spec/vcr_cassettes/microrregiao/microrregioes_por_id_23016.yml +47 -0
- data/spec/vcr_cassettes/microrregiao/microrregioes_por_id_23016_23017.yml +47 -0
- data/spec/vcr_cassettes/microrregiao/microrregioes_por_mesorregiao_2303.yml +55 -0
- data/spec/vcr_cassettes/microrregiao/microrregioes_por_mesorregiao_2303_2304.yml +47 -0
- data/spec/vcr_cassettes/microrregiao/microrregioes_por_regiao_NE.yml +47 -0
- data/spec/vcr_cassettes/microrregiao/microrregioes_por_regiao_N_NE.yml +47 -0
- data/spec/vcr_cassettes/microrregiao/microrregioes_por_uf_BA_CE.yml +47 -0
- data/spec/vcr_cassettes/microrregiao/microrregioes_por_uf_CE.yml +53 -0
- data/spec/vcr_cassettes/microrregiao/obter_microrregioes.yml +53 -0
- data/spec/vcr_cassettes/municipio/municipios_por_id_2307254.yml +53 -0
- data/spec/vcr_cassettes/municipio/municipios_por_id_2307254_2302206.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_mesorregiao_2303.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_mesorregiao_2303_2304.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_microrregiao_23016.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_microrregiao_23016_23017.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_regiao_NE.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_regiao_N_NE.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_regiao_imediata_230001.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_regiao_imediata_230001_230002.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_regiao_intermediaria_2301.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_regiao_intermediaria_2301_2302.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_uf_BA_CE.yml +47 -0
- data/spec/vcr_cassettes/municipio/municipios_por_uf_CE.yml +51 -0
- data/spec/vcr_cassettes/municipio/obter_municipios.yml +51 -0
- data/spec/vcr_cassettes/pais/obter_paises.yml +53 -0
- data/spec/vcr_cassettes/pais/paises_por_identificador_76.yml +53 -0
- data/spec/vcr_cassettes/pais/paises_por_identificador_76_300.yml +47 -0
- data/spec/vcr_cassettes/regiao/obter_regioes.yml +53 -0
- data/spec/vcr_cassettes/regiao/regioes_por_identificador_NE.yml +48 -0
- data/spec/vcr_cassettes/regiao/regioes_por_identificador_N_NE.yml +48 -0
- data/spec/vcr_cassettes/regiao_imediata/obter_regioes_imediatas.yml +53 -0
- data/spec/vcr_cassettes/regiao_imediata/regioes_imediatas_por_id_230001.yml +47 -0
- data/spec/vcr_cassettes/regiao_imediata/regioes_imediatas_por_id_230001_230002.yml +47 -0
- data/spec/vcr_cassettes/regiao_imediata/regioes_imediatas_por_intermediaria_2301.yml +47 -0
- data/spec/vcr_cassettes/regiao_imediata/regioes_imediatas_por_intermediaria_2301_2302.yml +47 -0
- data/spec/vcr_cassettes/regiao_imediata/regioes_imediatas_por_regiao_NE.yml +49 -0
- data/spec/vcr_cassettes/regiao_imediata/regioes_imediatas_por_regiao_N_NE.yml +49 -0
- data/spec/vcr_cassettes/regiao_imediata/regioes_imediatas_por_uf_BA_CE.yml +47 -0
- data/spec/vcr_cassettes/regiao_imediata/regioes_imediatas_por_uf_CE.yml +53 -0
- data/spec/vcr_cassettes/regiao_intermediaria/obter_regioes_intermediarias.yml +53 -0
- data/spec/vcr_cassettes/regiao_intermediaria/regioes_intermediarias_por_id_2301.yml +47 -0
- data/spec/vcr_cassettes/regiao_intermediaria/regioes_intermediarias_por_id_2301_2302.yml +47 -0
- data/spec/vcr_cassettes/regiao_intermediaria/regioes_intermediarias_por_regiao_NE.yml +47 -0
- data/spec/vcr_cassettes/regiao_intermediaria/regioes_intermediarias_por_regiao_N_NE.yml +47 -0
- data/spec/vcr_cassettes/regiao_intermediaria/regioes_intermediarias_por_uf_BA_CE.yml +47 -0
- data/spec/vcr_cassettes/regiao_intermediaria/regioes_intermediarias_por_uf_CE.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/obter_subdistritos.yml +53 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_distrito_230440005.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_distrito_230440005_230370905.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_id_23044000512.yml +49 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_id_23044000512_23044006511.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_mesorregiao_23016.yml +46 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_mesorregiao_23016_23017.yml +46 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_mesorregiao_2303.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_mesorregiao_2303_2304.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_microrregiao_23016.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_microrregiao_23016_23017.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_municipio_2304400.yml +55 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_municipio_2304400_2927408.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_municipio_2307254.yml +46 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_municipio_2307254_2302206.yml +46 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_regiao_NE.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_regiao_N_NE.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_uf_BA_CE.yml +47 -0
- data/spec/vcr_cassettes/subdistrito/subdistritos_por_uf_CE.yml +53 -0
- data/spec/vcr_cassettes/uf/obter_ufs.yml +51 -0
- data/spec/vcr_cassettes/uf/ufs_por_identificador_BA_CE.yml +47 -0
- data/spec/vcr_cassettes/uf/ufs_por_identificador_CE.yml +55 -0
- data/spec/vcr_cassettes/uf/ufs_por_regiao_N.yml +53 -0
- data/spec/vcr_cassettes/uf/ufs_por_regiao_N_NE.yml +47 -0
- metadata +384 -0
@@ -0,0 +1,228 @@
|
|
1
|
+
describe IBGE::Municipio do
|
2
|
+
shared_examples_for 'objeto' do
|
3
|
+
it 'deve retornar o nome Jijoca de Jericoacoara' do
|
4
|
+
expect(subject.nome).to eq('Jijoca de Jericoacoara')
|
5
|
+
end
|
6
|
+
|
7
|
+
it 'deve retornar o ID 2307254' do
|
8
|
+
expect(subject.id).to eq('2307254')
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'deve retornar a microrregião, que é um objeto IBGE::Microrregiao' do
|
12
|
+
expect(subject.microrregiao).to be_an IBGE::Microrregiao
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
shared_examples_for 'array' do |tamanho|
|
17
|
+
it 'deve retornar um Array<IBGE::Municipio>' do
|
18
|
+
aggregate_failures do
|
19
|
+
is_expected.to be_an Array
|
20
|
+
expect(subject.first).to be_an IBGE::Municipio
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
describe '.obter_municipios' do
|
26
|
+
subject do
|
27
|
+
VCR.use_cassette('municipio/obter_municipios') do
|
28
|
+
IBGE::Municipio.obter_municipios
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
it_has_behavior 'array'
|
33
|
+
end
|
34
|
+
|
35
|
+
describe '.municipios_por_id' do
|
36
|
+
context 'recebendo um array de IDs (["2307254", "2302206"]) como parâmetro' do
|
37
|
+
subject do
|
38
|
+
VCR.use_cassette('municipio/municipios_por_id:2307254|2302206', erb: { param: '2307254%7C2302206' }) do
|
39
|
+
IBGE::Municipio.municipios_por_id(%w(2307254 2302206))
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
it_has_behavior 'array'
|
44
|
+
end
|
45
|
+
|
46
|
+
context 'recebendo um ID ("2307254") como parâmetro' do
|
47
|
+
subject do
|
48
|
+
VCR.use_cassette('municipio/municipios_por_id:2307254', erb: { param: '2307254' }) do
|
49
|
+
IBGE::Municipio.municipios_por_id('2307254')
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
it_has_behavior 'objeto'
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
describe '.municipios_por_uf' do
|
58
|
+
context 'recebendo um array de siglas (["BA", "CE"]) como parâmetro' do
|
59
|
+
subject do
|
60
|
+
VCR.use_cassette('municipio/municipios_por_uf:BA|CE', erb: { param: 'BA%7CCE' }) do
|
61
|
+
IBGE::Municipio.municipios_por_uf(%w(BA CE)).first(20)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
it_has_behavior 'array'
|
66
|
+
end
|
67
|
+
|
68
|
+
context 'recebendo um array de IDs ([29, 23]) como parâmetro' do
|
69
|
+
subject do
|
70
|
+
VCR.use_cassette('municipio/municipios_por_uf:BA|CE', erb: { param: '29%7C23' }) do
|
71
|
+
IBGE::Municipio.municipios_por_uf([29, 23]).first(20)
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
it_has_behavior 'array'
|
76
|
+
end
|
77
|
+
|
78
|
+
context 'recebendo uma sigla (CE) como parâmetro' do
|
79
|
+
subject do
|
80
|
+
VCR.use_cassette('municipio/municipios_por_uf:CE', erb: { param: 'CE' }) do
|
81
|
+
IBGE::Municipio.municipios_por_uf('CE')
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
it_has_behavior 'array'
|
86
|
+
end
|
87
|
+
|
88
|
+
context 'recebendo um ID (23) como parâmetro' do
|
89
|
+
subject do
|
90
|
+
VCR.use_cassette('municipio/municipios_por_uf:CE', erb: { param: 23 }) do
|
91
|
+
IBGE::Municipio.municipios_por_uf(23)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
it_has_behavior 'array'
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
describe '.municipios_por_regiao' do
|
100
|
+
context 'recebendo um array de siglas (["N", "NE"]) como parâmetro' do
|
101
|
+
subject do
|
102
|
+
VCR.use_cassette('municipio/municipios_por_regiao:N|NE', erb: { param: 'N%7CNE' }) do
|
103
|
+
IBGE::Municipio.municipios_por_regiao(%w(N NE))
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
it_has_behavior 'array'
|
108
|
+
end
|
109
|
+
|
110
|
+
context 'recebendo um array de IDs ([1, 2]) como parâmetro' do
|
111
|
+
subject do
|
112
|
+
VCR.use_cassette('municipio/municipios_por_regiao:N|NE', erb: { param: '1%7C2' }) do
|
113
|
+
IBGE::Municipio.municipios_por_regiao([1, 2])
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
it_has_behavior 'array'
|
118
|
+
end
|
119
|
+
|
120
|
+
context 'recebendo um ID (2) como parâmetro' do
|
121
|
+
subject do
|
122
|
+
VCR.use_cassette('municipio/municipios_por_regiao:NE', erb: { param: 2 }) do
|
123
|
+
IBGE::Municipio.municipios_por_regiao(2)
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
it_has_behavior 'array'
|
128
|
+
end
|
129
|
+
|
130
|
+
context 'recebendo uma sigla (NE) como parâmetro' do
|
131
|
+
subject do
|
132
|
+
VCR.use_cassette('municipio/municipios_por_regiao:NE', erb: { param: 'NE' }) do
|
133
|
+
IBGE::Municipio.municipios_por_regiao('NE')
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
it_has_behavior 'array'
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
describe '.municipios_por_regiao_imediata' do
|
142
|
+
context 'recebendo um array de IDs ([230001, 230002]) como parâmetro' do
|
143
|
+
subject do
|
144
|
+
VCR.use_cassette('municipio/municipios_por_regiao_imediata:230001|230002', erb: { param: '230001%7C230002' }) do
|
145
|
+
IBGE::Municipio.municipios_por_regiao_imediata([230001, 230002])
|
146
|
+
end
|
147
|
+
end
|
148
|
+
|
149
|
+
it_has_behavior 'array'
|
150
|
+
end
|
151
|
+
|
152
|
+
context 'recebendo um ID (230001) como parâmetro' do
|
153
|
+
subject do
|
154
|
+
VCR.use_cassette('municipio/municipios_por_regiao_imediata:230001', erb: { param: '230001' }) do
|
155
|
+
IBGE::Municipio.municipios_por_regiao_imediata(230001)
|
156
|
+
end
|
157
|
+
end
|
158
|
+
|
159
|
+
it_has_behavior 'array'
|
160
|
+
end
|
161
|
+
end
|
162
|
+
|
163
|
+
describe '.municipios_por_regiao_intermediaria' do
|
164
|
+
context 'recebendo um array de IDs ([2301, 2302]) como parâmetro' do
|
165
|
+
subject do
|
166
|
+
VCR.use_cassette('municipio/municipios_por_regiao_intermediaria:2301|2302', erb: { param: '2301%7C23017' }) do
|
167
|
+
IBGE::Municipio.municipios_por_regiao_intermediaria([2301, 2302])
|
168
|
+
end
|
169
|
+
end
|
170
|
+
|
171
|
+
it_has_behavior 'array'
|
172
|
+
end
|
173
|
+
|
174
|
+
context 'recebendo um ID (2301) como parâmetro' do
|
175
|
+
subject do
|
176
|
+
VCR.use_cassette('municipio/municipios_por_regiao_intermediaria:2301', erb: { param: '2301' }) do
|
177
|
+
IBGE::Municipio.municipios_por_regiao_intermediaria(2301)
|
178
|
+
end
|
179
|
+
end
|
180
|
+
|
181
|
+
it_has_behavior 'array'
|
182
|
+
end
|
183
|
+
end
|
184
|
+
|
185
|
+
describe '.municipios_por_mesorregiao' do
|
186
|
+
context 'recebendo um array de IDs ([2303, 2304]) como parâmetro' do
|
187
|
+
subject do
|
188
|
+
VCR.use_cassette('municipio/municipios_por_mesorregiao:2303|2304', erb: { param: '2303%7C2304' }) do
|
189
|
+
IBGE::Municipio.municipios_por_mesorregiao([2303, 2304])
|
190
|
+
end
|
191
|
+
end
|
192
|
+
|
193
|
+
it_has_behavior 'array'
|
194
|
+
end
|
195
|
+
|
196
|
+
context 'recebendo um ID (2303) como parâmetro' do
|
197
|
+
subject do
|
198
|
+
VCR.use_cassette('municipio/municipios_por_mesorregiao:2303', erb: { param: '2303' }) do
|
199
|
+
IBGE::Municipio.municipios_por_mesorregiao(2303)
|
200
|
+
end
|
201
|
+
end
|
202
|
+
|
203
|
+
it_has_behavior 'array'
|
204
|
+
end
|
205
|
+
end
|
206
|
+
|
207
|
+
describe '.municipios_por_microrregiao' do
|
208
|
+
context 'recebendo um array de IDs ([23016, 23017]) como parâmetro' do
|
209
|
+
subject do
|
210
|
+
VCR.use_cassette('municipio/municipios_por_microrregiao:23016|23017', erb: { param: '23016%7C23017' }) do
|
211
|
+
IBGE::Municipio.municipios_por_microrregiao([23016, 23017])
|
212
|
+
end
|
213
|
+
end
|
214
|
+
|
215
|
+
it_has_behavior 'array'
|
216
|
+
end
|
217
|
+
|
218
|
+
context 'recebendo um ID (23016) como parâmetro' do
|
219
|
+
subject do
|
220
|
+
VCR.use_cassette('municipio/municipios_por_microrregiao:23016', erb: { param: '23016' }) do
|
221
|
+
IBGE::Municipio.municipios_por_microrregiao(23016)
|
222
|
+
end
|
223
|
+
end
|
224
|
+
|
225
|
+
it_has_behavior 'array'
|
226
|
+
end
|
227
|
+
end
|
228
|
+
end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
describe IBGE::Pais do
|
2
|
+
shared_examples_for 'pais' do
|
3
|
+
it 'deve retornar o nome Brasil' do
|
4
|
+
expect(subject.first.nome).to eq('Brasil')
|
5
|
+
end
|
6
|
+
|
7
|
+
it 'deve retornar o ID (M49) 76' do
|
8
|
+
expect(subject.first.id['M49']).to eq(76)
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'deve retornar a sigla (ISO-ALPHA-2) BR' do
|
12
|
+
expect(subject.first.id['ISO-ALPHA-2']).to eq('BR')
|
13
|
+
end
|
14
|
+
|
15
|
+
it 'deve retornar América do sul como região intermediária' do
|
16
|
+
expect(subject.first.regiao_intermediaria['nome']).to eq('América do sul')
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
shared_examples_for 'array' do
|
21
|
+
it 'deve retornar um Array<IBGE::Pais>' do
|
22
|
+
aggregate_failures do
|
23
|
+
is_expected.to be_an Array
|
24
|
+
expect(subject.first).to be_an IBGE::Pais
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
describe '.obter_paises' do
|
30
|
+
subject do
|
31
|
+
VCR.use_cassette('pais/obter_paises') do
|
32
|
+
IBGE::Pais.obter_paises
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
it_has_behavior 'array'
|
37
|
+
end
|
38
|
+
|
39
|
+
describe '.paises_por_identificador' do
|
40
|
+
context 'recebendo um array de IDs ([76, 300]) como parâmetro' do
|
41
|
+
subject do
|
42
|
+
VCR.use_cassette('pais/paises_por_identificador:76|300', erb: { param: '76%7C300' }) do
|
43
|
+
IBGE::Pais.paises_por_identificador([76, 300])
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
it_has_behavior 'array'
|
48
|
+
it_has_behavior 'pais'
|
49
|
+
end
|
50
|
+
|
51
|
+
context 'recebendo um ID (76) como parâmetro' do
|
52
|
+
subject do
|
53
|
+
VCR.use_cassette('pais/paises_por_identificador:76', erb: { param: 76 }) do
|
54
|
+
IBGE::Pais.paises_por_identificador(76)
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
it_has_behavior 'array'
|
59
|
+
it_has_behavior 'pais'
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
@@ -0,0 +1,162 @@
|
|
1
|
+
describe IBGE::RegiaoImediata do
|
2
|
+
shared_examples_for 'objeto' do
|
3
|
+
it 'deve retornar o nome Fortaleza' do
|
4
|
+
expect(subject.nome).to eq('Fortaleza')
|
5
|
+
end
|
6
|
+
|
7
|
+
it 'deve retornar o ID 230001' do
|
8
|
+
expect(subject.id).to eq(230001)
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'deve retornar a região intermediária, que é um objeto IBGE::RegiaoIntermediaria' do
|
12
|
+
expect(subject.regiao_intermediaria).to be_an IBGE::RegiaoIntermediaria
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
shared_examples_for 'array' do
|
17
|
+
it 'deve retornar um Array<IBGE::RegiaoImediata>' do
|
18
|
+
aggregate_failures do
|
19
|
+
is_expected.to be_an Array
|
20
|
+
expect(subject.first).to be_an IBGE::RegiaoImediata
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
describe '.obter_regioes_imediatas' do
|
26
|
+
subject do
|
27
|
+
VCR.use_cassette('regiao_imediata/obter_regioes_imediatas') do
|
28
|
+
IBGE::RegiaoImediata.obter_regioes_imediatas
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
it_has_behavior 'array'
|
33
|
+
end
|
34
|
+
|
35
|
+
describe '.regioes_imediatas_por_id' do
|
36
|
+
context 'recebendo um array de IDs ([230001, 230002]) como parâmetro' do
|
37
|
+
subject do
|
38
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_id:230001|230002', erb: { param: '230001%7C230002' }) do
|
39
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_id([230001, 230002])
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
it_has_behavior 'array'
|
44
|
+
end
|
45
|
+
|
46
|
+
context 'recebendo um ID (230001) como parâmetro' do
|
47
|
+
subject do
|
48
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_id:230001', erb: { param: '230001' }) do
|
49
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_id(230001)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
it_has_behavior 'objeto'
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
describe '.regioes_imediatas_por_uf' do
|
58
|
+
context 'recebendo um array de siglas (["BA", "CE"]) como parâmetro' do
|
59
|
+
subject do
|
60
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_uf:BA|CE', erb: { param: 'BA%7CCE' }) do
|
61
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_uf(%w(BA CE))
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
it_has_behavior 'array'
|
66
|
+
end
|
67
|
+
|
68
|
+
context 'recebendo um array de IDs ([29, 23]) como parâmetro' do
|
69
|
+
subject do
|
70
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_uf:BA|CE', erb: { param: '29%7C23' }) do
|
71
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_uf([29, 23])
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
it_has_behavior 'array'
|
76
|
+
end
|
77
|
+
|
78
|
+
context 'recebendo uma sigla (CE) como parâmetro' do
|
79
|
+
subject do
|
80
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_uf:CE', erb: { param: 'CE' }) do
|
81
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_uf('CE')
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
it_has_behavior 'array'
|
86
|
+
end
|
87
|
+
|
88
|
+
context 'recebendo um ID (23) como parâmetro' do
|
89
|
+
subject do
|
90
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_uf:CE', erb: { param: 23 }) do
|
91
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_uf(23)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
it_has_behavior 'array'
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
describe '.regioes_imediatas_por_regiao' do
|
100
|
+
context 'recebendo um array de siglas (["N", "NE"]) como parâmetro' do
|
101
|
+
subject do
|
102
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_regiao:N|NE', erb: { param: 'N%7CNE' }) do
|
103
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_regiao(%w(N NE))
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
it_has_behavior 'array'
|
108
|
+
end
|
109
|
+
|
110
|
+
context 'recebendo um array de IDs ([1, 2]) como parâmetro' do
|
111
|
+
subject do
|
112
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_regiao:N|NE', erb: { param: '1%7C2' }) do
|
113
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_regiao([1, 2])
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
it_has_behavior 'array'
|
118
|
+
end
|
119
|
+
|
120
|
+
context 'recebendo um ID (2) como parâmetro' do
|
121
|
+
subject do
|
122
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_regiao:NE', erb: { param: 2 }) do
|
123
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_regiao(2)
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
it_has_behavior 'array'
|
128
|
+
end
|
129
|
+
|
130
|
+
context 'recebendo uma sigla (NE) como parâmetro' do
|
131
|
+
subject do
|
132
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_regiao:NE', erb: { param: 'NE' }) do
|
133
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_regiao('NE')
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
it_has_behavior 'array'
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
describe '.regioes_imediatas_por_intermediaria' do
|
142
|
+
context 'recebendo um array de IDs ([2301, 2302]) como parâmetro' do
|
143
|
+
subject do
|
144
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_intermediaria:2301|2302', erb: { param: '2301%7C23017' }) do
|
145
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_intermediaria([2301, 2302])
|
146
|
+
end
|
147
|
+
end
|
148
|
+
|
149
|
+
it_has_behavior 'array'
|
150
|
+
end
|
151
|
+
|
152
|
+
context 'recebendo um ID (2301) como parâmetro' do
|
153
|
+
subject do
|
154
|
+
VCR.use_cassette('regiao_imediata/regioes_imediatas_por_intermediaria:2301', erb: { param: '2301' }) do
|
155
|
+
IBGE::RegiaoImediata.regioes_imediatas_por_intermediaria(2301)
|
156
|
+
end
|
157
|
+
end
|
158
|
+
|
159
|
+
it_has_behavior 'array'
|
160
|
+
end
|
161
|
+
end
|
162
|
+
end
|
@@ -0,0 +1,140 @@
|
|
1
|
+
describe IBGE::RegiaoIntermediaria do
|
2
|
+
shared_examples_for 'objeto' do
|
3
|
+
it 'deve retornar o nome Fortaleza' do
|
4
|
+
expect(subject.nome).to eq('Fortaleza')
|
5
|
+
end
|
6
|
+
|
7
|
+
it 'deve retornar o ID 2301' do
|
8
|
+
expect(subject.id).to eq(2301)
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'deve retornar a UF, que é um objeto IBGE::UF' do
|
12
|
+
expect(subject.uf).to be_an IBGE::UF
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
shared_examples_for 'array' do
|
17
|
+
it 'deve retornar um Array<IBGE::RegiaoIntermediaria>' do
|
18
|
+
aggregate_failures do
|
19
|
+
is_expected.to be_an Array
|
20
|
+
expect(subject.first).to be_an IBGE::RegiaoIntermediaria
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
describe '.obter_regioes_intermediarias' do
|
26
|
+
subject do
|
27
|
+
VCR.use_cassette('regiao_intermediaria/obter_regioes_intermediarias') do
|
28
|
+
IBGE::RegiaoIntermediaria.obter_regioes_intermediarias
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
it_has_behavior 'array'
|
33
|
+
end
|
34
|
+
|
35
|
+
describe '.regioes_intermediarias_por_id' do
|
36
|
+
context 'recebendo um array de IDs ([2301, 2302]) como parâmetro' do
|
37
|
+
subject do
|
38
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_id:2301|2302', erb: { param: '2301%7C2302' }) do
|
39
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_id([2301, 2302])
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
it_has_behavior 'array'
|
44
|
+
end
|
45
|
+
|
46
|
+
context 'recebendo um ID (2301) como parâmetro' do
|
47
|
+
subject do
|
48
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_id:2301', erb: { param: '2301' }) do
|
49
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_id(2301)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
it_has_behavior 'objeto'
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
describe '.regioes_intermediarias_por_uf' do
|
58
|
+
context 'recebendo um array de siglas (["BA", "CE"]) como parâmetro' do
|
59
|
+
subject do
|
60
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_uf:BA|CE', erb: { param: 'BA%7CCE' }) do
|
61
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_uf(%w(BA CE))
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
it_has_behavior 'array'
|
66
|
+
end
|
67
|
+
|
68
|
+
context 'recebendo um array de IDs ([29, 23]) como parâmetro' do
|
69
|
+
subject do
|
70
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_uf:BA|CE', erb: { param: '29%7C23' }) do
|
71
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_uf([29, 23])
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
it_has_behavior 'array'
|
76
|
+
end
|
77
|
+
|
78
|
+
context 'recebendo uma sigla (CE) como parâmetro' do
|
79
|
+
subject do
|
80
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_uf:CE', erb: { param: 'CE' }) do
|
81
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_uf('CE')
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
it_has_behavior 'array'
|
86
|
+
end
|
87
|
+
|
88
|
+
context 'recebendo um ID (23) como parâmetro' do
|
89
|
+
subject do
|
90
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_uf:CE', erb: { param: 23 }) do
|
91
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_uf(23)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
it_has_behavior 'array'
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
describe '.regioes_intermediarias_por_regiao' do
|
100
|
+
context 'recebendo um array de siglas (["N", "NE"]) como parâmetro' do
|
101
|
+
subject do
|
102
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_regiao:N|NE', erb: { param: 'N%7CNE' }) do
|
103
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_regiao(%w(N NE))
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
it_has_behavior 'array'
|
108
|
+
end
|
109
|
+
|
110
|
+
context 'recebendo um array de IDs ([1, 2]) como parâmetro' do
|
111
|
+
subject do
|
112
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_regiao:N|NE', erb: { param: '1%7C2' }) do
|
113
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_regiao([1, 2])
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
it_has_behavior 'array'
|
118
|
+
end
|
119
|
+
|
120
|
+
context 'recebendo um ID (2) como parâmetro' do
|
121
|
+
subject do
|
122
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_regiao:NE', erb: { param: 2 }) do
|
123
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_regiao(2)
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
it_has_behavior 'array'
|
128
|
+
end
|
129
|
+
|
130
|
+
context 'recebendo uma sigla (NE) como parâmetro' do
|
131
|
+
subject do
|
132
|
+
VCR.use_cassette('regiao_intermediaria/regioes_intermediarias_por_regiao:NE', erb: { param: 'NE' }) do
|
133
|
+
IBGE::RegiaoIntermediaria.regioes_intermediarias_por_regiao('NE')
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
it_has_behavior 'array'
|
138
|
+
end
|
139
|
+
end
|
140
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
describe IBGE::Regiao do
|
2
|
+
describe '.obter_regioes' do
|
3
|
+
subject do
|
4
|
+
VCR.use_cassette('regiao/obter_regioes') do
|
5
|
+
IBGE::Regiao.obter_regioes
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'deve retornar um Array<IBGE::Regiao>' do
|
10
|
+
aggregate_failures do
|
11
|
+
is_expected.to be_an Array
|
12
|
+
expect(subject.first).to be_an IBGE::Regiao
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
describe '.regioes_por_identificador' do
|
18
|
+
shared_examples_for 'array' do
|
19
|
+
it 'deve retornar um Array' do
|
20
|
+
is_expected.to be_an Array
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'deve possuir o tamanho 2' do
|
24
|
+
expect(subject.size).to eq(2)
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'deve retornar as siglas NE e N' do
|
28
|
+
expect(subject.map(&:sigla)).to eq(['N', 'NE'])
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
context 'recebendo um array de siglas (["N", "NE"]) como parâmetro' do
|
33
|
+
subject do
|
34
|
+
VCR.use_cassette('regiao/regioes_por_identificador:N|NE', erb: { param: 'N%7CNE' }) do
|
35
|
+
IBGE::Regiao.regioes_por_identificador(%w(N NE))
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
it_has_behavior 'array'
|
40
|
+
end
|
41
|
+
|
42
|
+
context 'recebendo um array de IDs ([1, 2]) como parâmetro' do
|
43
|
+
subject do
|
44
|
+
VCR.use_cassette('regiao/regioes_por_identificador:N|NE', erb: { param: '1%7C2' }) do
|
45
|
+
IBGE::Regiao.regioes_por_identificador([1, 2])
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
it_has_behavior 'array'
|
50
|
+
end
|
51
|
+
|
52
|
+
shared_examples_for 'objeto' do
|
53
|
+
it 'deve retornar um objeto IBGE::Regiao' do
|
54
|
+
is_expected.to be_an IBGE::Regiao
|
55
|
+
end
|
56
|
+
|
57
|
+
it 'deve retornar o nome Nordeste' do
|
58
|
+
expect(subject.nome).to eq('Nordeste')
|
59
|
+
end
|
60
|
+
|
61
|
+
it 'deve retornar o ID 2' do
|
62
|
+
expect(subject.id).to eq(2)
|
63
|
+
end
|
64
|
+
|
65
|
+
it 'deve retornar a sigla NE' do
|
66
|
+
expect(subject.sigla).to eq('NE')
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
context 'recebendo uma sigla (NE) como parâmetro' do
|
71
|
+
subject do
|
72
|
+
VCR.use_cassette('regiao/regioes_por_identificador:NE', erb: { param: 'NE' }) do
|
73
|
+
IBGE::Regiao.regioes_por_identificador('NE')
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
it_has_behavior 'objeto'
|
78
|
+
end
|
79
|
+
|
80
|
+
context 'recebendo um ID (2) como parâmetro' do
|
81
|
+
subject do
|
82
|
+
VCR.use_cassette('regiao/regioes_por_identificador:NE', erb: { param: 2 }) do
|
83
|
+
IBGE::Regiao.regioes_por_identificador(2)
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
it_has_behavior 'objeto'
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|