correios_sigep 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MzY0MjRkOGFlNTE0NmY5YjE2ZjA4NTdlZTNhZDljMWNjNDg3ZTE0Mg==
4
+ YjFiOTcyYTk2ZDY4ZTljOGZlMzBmZDM0ODllZTMwNjg0NjBmZDAwOA==
5
5
  data.tar.gz: !binary |-
6
- YWE4NmIzOWJhNTk4NThhNmRjYzBlZDRiMzdhNzAxMTllNWZiNDlhOA==
6
+ NmIyMWNhNzQzNzNjMmI5MzIxZGViOWI1MjVhMDg1OWVkYzgyOTk3MA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MWZhYTFmNmQyOTA4NmNhOGYxZjljMWZkYWM1NzYyZWI0MGZiNTYwMjY0MTE2
10
- NjUyMmQyZGY3NTIxODg5MmMxYjAwN2QwN2VjMWRkMjRkNWZlYjk2ZTgwNjY0
11
- MjhlNGVlMzNkMjk0M2MyOTUwOTU2MjZkYjBiY2YyOWRmOWNhMDM=
9
+ MzBmZGYzNjI1ZTgyZjkwZDZjNmUzMmNkN2UyODFiMTRlZmIyM2E2ODkzMjhl
10
+ ZTRiMTNlZjlkMmY3NjUzYjQ2ZDU3M2FhNGUyNTA2MjhhYjdkZTQxMDBkOGFj
11
+ ODc1NGExM2I0NjcyOTAwMGJkYzE0ZGM2Y2VmOTNiZGQ0NjExODU=
12
12
  data.tar.gz: !binary |-
13
- ODBiOGNlOGJhNTRmMmVhYmRmNDBhZGQxZmY3NjYzM2QzMjQ4OWNkYjE1YWUx
14
- M2FjNDA2ZmNkZGRiMzNhMTcxZjRiNTI3NGNhNjE0NDU1ODJlNTI1NWIyYmQ5
15
- MjQ1YmI1YTllYzc1YzkwYzE3ZmU3OTAwZGJiNjVjNzhmYjg3YmI=
13
+ ZjI0ZmEzM2FiZjk2ZjRhMmI3MTM4MmRjNGJlODMyM2YxOWMwZDA5NzVmNTBi
14
+ ZmExOWNiMWE0NTMyZDJhOTIwMGY4ODdjOWMxYmY5MzUyMGM3MTc4Y2JiOWFk
15
+ ZWUzMmVmM2YxODdhNmY2MGZlNmM4ZWI4NWViMjY5MTY5YzExYzQ=
@@ -15,14 +15,19 @@ module CorreiosSigep
15
15
  private
16
16
  def process_response response
17
17
  correios_hash = response.body[:acompanhar_pedido_response][:return]
18
- check_sro_errors correios_hash
19
- correios_hash[:coleta][:objeto][:numero_etiqueta] || begin raise Models::Errors::SRONotReady; end
18
+ check_sro_errors(correios_hash)
19
+ correios_response(correios_hash[:coleta][:objeto])[:numero_etiqueta] || begin raise Models::Errors::SRONotReady; end
20
+ end
21
+
22
+ def correios_response response
23
+ response.is_a?(Array) ? response.first : response
20
24
  end
21
25
 
22
26
  def check_sro_errors return_body
23
27
  error_msg = return_body[:msg_erro]
24
28
  case return_body[:cod_erro].to_i
25
29
  when 0
30
+ return
26
31
  when -7
27
32
  raise Models::Errors::RequiredFields.new(error_msg)
28
33
  when -5
@@ -1,3 +1,3 @@
1
1
  module CorreiosSigep
2
- VERSION = '0.3.0'
2
+ VERSION = '0.3.1'
3
3
  end
@@ -65,6 +65,14 @@ module CorreiosSigep
65
65
  end
66
66
  end
67
67
 
68
+ context 'when response is an array' do
69
+ let(:response_body) { 'response_array_success.xml' }
70
+
71
+ it 'returns sro ticket' do
72
+ expect(subject).to eq 'ETI12345'
73
+ end
74
+ end
75
+
68
76
  end
69
77
  end
70
78
  end
@@ -0,0 +1,38 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
3
+ <S:Body>
4
+ <ns2:acompanharPedidoResponse xmlns:ns2="http://webservice.scol.correios.com.br/">
5
+ <return>
6
+ <codigo_administrativo>0808265</codigo_administrativo>
7
+ <tipo_solicitacao>A</tipo_solicitacao>
8
+ <coleta>
9
+ <numero_pedido>1234</numero_pedido>
10
+ <controle_cliente>56789</controle_cliente>
11
+ <historico>
12
+ <status>55</status>
13
+ <descricao_status>Aguardando Objeto na Agência</descricao_status>
14
+ <data_atualizacao>16-07-2015</data_atualizacao>
15
+ <hora_atualizacao>11:02:36</hora_atualizacao>
16
+ <observacao/>
17
+ </historico>
18
+ <objeto>
19
+ <numero_etiqueta>ETI12345</numero_etiqueta>
20
+ <controle_objeto_cliente>2696523</controle_objeto_cliente>
21
+ <ultimo_status>55</ultimo_status>
22
+ <descricao_status>Aguardando Objeto na Agência</descricao_status>
23
+ <data_ultima_atualizacao>16-07-2015</data_ultima_atualizacao>
24
+ <hora_ultima_atualizacao>11:02:36</hora_ultima_atualizacao>
25
+ </objeto>
26
+ <objeto>
27
+ <numero_etiqueta></numero_etiqueta>
28
+ <controle_objeto_cliente>2696523</controle_objeto_cliente>
29
+ <ultimo_status>55</ultimo_status>
30
+ <descricao_status>Aguardando Objeto na Agência</descricao_status>
31
+ <data_ultima_atualizacao>16-07-2015</data_ultima_atualizacao>
32
+ <hora_ultima_atualizacao>11:02:36</hora_ultima_atualizacao>
33
+ </objeto>
34
+ </coleta>
35
+ </return>
36
+ </ns2:acompanharPedidoResponse>
37
+ </S:Body>
38
+ </S:Envelope>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: correios_sigep
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carlos Ribeiro
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-09-01 00:00:00.000000000 Z
12
+ date: 2015-11-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: net-http-persistent
@@ -191,6 +191,7 @@ files:
191
191
  - spec/fixtures/correios/request_collect_number/response_unavailable_house_collect.xml
192
192
  - spec/fixtures/correios/request_collect_number/response_unavailable_service.xml
193
193
  - spec/fixtures/correios/request_collect_number/response_unexpected.xml
194
+ - spec/fixtures/correios/request_sro/response_array_success.xml
194
195
  - spec/fixtures/correios/request_sro/response_collect_number_not_found.xml
195
196
  - spec/fixtures/correios/request_sro/response_required_fields.xml
196
197
  - spec/fixtures/correios/request_sro/response_sro_not_ready.xml
@@ -253,6 +254,7 @@ test_files:
253
254
  - spec/fixtures/correios/request_collect_number/response_unavailable_house_collect.xml
254
255
  - spec/fixtures/correios/request_collect_number/response_unavailable_service.xml
255
256
  - spec/fixtures/correios/request_collect_number/response_unexpected.xml
257
+ - spec/fixtures/correios/request_sro/response_array_success.xml
256
258
  - spec/fixtures/correios/request_sro/response_collect_number_not_found.xml
257
259
  - spec/fixtures/correios/request_sro/response_required_fields.xml
258
260
  - spec/fixtures/correios/request_sro/response_sro_not_ready.xml