correios-sro-xml 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.rdoc CHANGED
@@ -1,2 +1,5 @@
1
+ == Versão 0.0.2
2
+ - Melhoria: {Issue #1: Incluindo campo hora}[https://github.com/prodis/correios-sro-xml/pull/1].
3
+
1
4
  == Versão 0.0.1
2
5
  - Primeira versão funcional, mas ainda instável.
data/Gemfile CHANGED
@@ -1,14 +1,13 @@
1
1
  source "http://rubygems.org"
2
2
 
3
3
  gem "log-me", "~> 0.0.2"
4
- gem "nokogiri", "~> 1.5.0"
5
- gem "sax-machine", "~> 0.1.0"
4
+ gem "nokogiri", "~> 1.5"
5
+ gem "sax-machine", "~> 0.1"
6
6
 
7
7
  group :development do
8
- gem "bundler", "~> 1.0"
9
8
  gem "fakeweb", "~> 1.3"
10
9
  gem "jeweler", "~> 1.8"
11
- gem "rspec", "~> 2.8"
10
+ gem "rspec", "~> 2.9"
12
11
  gem "ruby-debug", :platforms => :ruby_18
13
12
  gem "ruby-debug19", :require => "ruby-debug", :platforms => :ruby_19
14
13
  end
data/Gemfile.lock CHANGED
@@ -11,25 +11,25 @@ GEM
11
11
  git (>= 1.2.5)
12
12
  rake
13
13
  rdoc
14
- json (1.6.5)
14
+ json (1.6.6)
15
15
  linecache (0.46)
16
16
  rbx-require-relative (> 0.0.4)
17
17
  linecache19 (0.5.12)
18
18
  ruby_core_source (>= 0.1.4)
19
19
  log-me (0.0.2)
20
- nokogiri (1.5.0)
20
+ nokogiri (1.5.2)
21
21
  rake (0.9.2.2)
22
- rbx-require-relative (0.0.5)
22
+ rbx-require-relative (0.0.9)
23
23
  rdoc (3.12)
24
24
  json (~> 1.4)
25
- rspec (2.8.0)
26
- rspec-core (~> 2.8.0)
27
- rspec-expectations (~> 2.8.0)
28
- rspec-mocks (~> 2.8.0)
29
- rspec-core (2.8.0)
30
- rspec-expectations (2.8.0)
31
- diff-lcs (~> 1.1.2)
32
- rspec-mocks (2.8.0)
25
+ rspec (2.9.0)
26
+ rspec-core (~> 2.9.0)
27
+ rspec-expectations (~> 2.9.0)
28
+ rspec-mocks (~> 2.9.0)
29
+ rspec-core (2.9.0)
30
+ rspec-expectations (2.9.1)
31
+ diff-lcs (~> 1.1.3)
32
+ rspec-mocks (2.9.0)
33
33
  ruby-debug (0.10.4)
34
34
  columnize (>= 0.1)
35
35
  ruby-debug-base (~> 0.10.4.0)
@@ -52,12 +52,11 @@ PLATFORMS
52
52
  ruby
53
53
 
54
54
  DEPENDENCIES
55
- bundler (~> 1.0)
56
55
  fakeweb (~> 1.3)
57
56
  jeweler (~> 1.8)
58
57
  log-me (~> 0.0.2)
59
- nokogiri (~> 1.5.0)
60
- rspec (~> 2.8)
58
+ nokogiri (~> 1.5)
59
+ rspec (~> 2.9)
61
60
  ruby-debug
62
61
  ruby-debug19
63
- sax-machine (~> 0.1.0)
62
+ sax-machine (~> 0.1)
data/README.rdoc CHANGED
@@ -24,6 +24,7 @@ Rastreamento de um objeto:
24
24
  objeto = sro.consultar("SI047624825BR")
25
25
  objeto.numero # => "SI047624825BR"
26
26
  objeto.eventos.first.data # => "26/12/2011"
27
+ objeto.eventos.first.hora # => "15:22"
27
28
  objeto.eventos.first.local # => "AC CENTRAL DE SAO PAULO"
28
29
  objeto.eventos.first.descricao # => "Entregue"
29
30
 
@@ -32,11 +33,13 @@ Rastreamento de vários objetos:
32
33
 
33
34
  objetos["SI047624825BR"].numero # => "SI047624825BR"
34
35
  objetos["SI047624825BR"].eventos.first.data # => "26/12/2011"
36
+ objetos["SI047624825BR"].eventos.first.hora # => "15:22"
35
37
  objetos["SI047624825BR"].eventos.first.local # => "AC CENTRAL DE SAO PAULO"
36
38
  objetos["SI047624825BR"].eventos.first.descricao # => "Entregue"
37
39
 
38
40
  objetos["SX104110463BR"].numero # => "SX104110463BR"
39
41
  objetos["SX104110463BR"].eventos.first.data # => "08/12/2011"
42
+ objetos["SX104110463BR"].eventos.first.hora # => "09:30"
40
43
  objetos["SX104110463BR"].eventos.first.local # => "CEE JUNDIAI"
41
44
  objetos["SX104110463BR"].eventos.first.descricao # => "Entregue"
42
45
 
@@ -44,6 +47,8 @@ Rastreamento de vários objetos:
44
47
  == Autor
45
48
  - {Fernando Hamasaki (prodis)}[http://prodis.blog.br]
46
49
 
50
+ == Colaboradores
51
+ - {Thiago Ganzarolli (tganzarolli)}[https://github.com/tganzarolli]
47
52
 
48
53
  == Contributing to correios-sro-xml
49
54
 
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "correios-sro-xml"
8
- s.version = "0.0.1"
8
+ s.version = "0.0.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Prodis a.k.a. Fernando Hamasaki"]
12
- s.date = "2012-01-30"
12
+ s.date = "2012-04-04"
13
13
  s.description = "Sistema de Rastreamento de Objetos dos Correios (SRO) utilizando o Web Service SRO XML, que permite a consulta de ate 50 encomendas simultaneamente."
14
14
  s.email = "prodis@gmail.com"
15
15
  s.extra_rdoc_files = [
@@ -32,15 +32,20 @@ Gem::Specification.new do |s|
32
32
  "lib/correios/sro/rastreador.rb",
33
33
  "lib/correios/sro/version.rb",
34
34
  "lib/correios/sro/web_service.rb",
35
+ "spec/correios/sro/evento_spec.rb",
36
+ "spec/correios/sro/parser_spec.rb",
35
37
  "spec/correios/sro/rastreador_spec.rb",
36
38
  "spec/correios/sro/web_service_spec.rb",
37
- "spec/spec_helper.rb"
39
+ "spec/spec_helper.rb",
40
+ "spec/support/fake_request.rb",
41
+ "spec/support/responses/success-response-many-objects.xml",
42
+ "spec/support/responses/success-response-one-object.xml"
38
43
  ]
39
44
  s.homepage = "http://github.com/prodis/correios-sro-xml"
40
45
  s.licenses = ["MIT"]
41
46
  s.require_paths = ["lib"]
42
47
  s.required_ruby_version = Gem::Requirement.new(">= 1.8.7")
43
- s.rubygems_version = "1.8.11"
48
+ s.rubygems_version = "1.8.16"
44
49
  s.summary = "Sistema de Rastreamento de Objetos dos Correios (SRO)."
45
50
 
46
51
  if s.respond_to? :specification_version then
@@ -48,33 +53,30 @@ Gem::Specification.new do |s|
48
53
 
49
54
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
50
55
  s.add_runtime_dependency(%q<log-me>, ["~> 0.0.2"])
51
- s.add_runtime_dependency(%q<nokogiri>, ["~> 1.5.0"])
52
- s.add_runtime_dependency(%q<sax-machine>, ["~> 0.1.0"])
53
- s.add_development_dependency(%q<bundler>, ["~> 1.0"])
56
+ s.add_runtime_dependency(%q<nokogiri>, ["~> 1.5"])
57
+ s.add_runtime_dependency(%q<sax-machine>, ["~> 0.1"])
54
58
  s.add_development_dependency(%q<fakeweb>, ["~> 1.3"])
55
59
  s.add_development_dependency(%q<jeweler>, ["~> 1.8"])
56
- s.add_development_dependency(%q<rspec>, ["~> 2.8"])
60
+ s.add_development_dependency(%q<rspec>, ["~> 2.9"])
57
61
  s.add_development_dependency(%q<ruby-debug>, [">= 0"])
58
62
  s.add_development_dependency(%q<ruby-debug19>, [">= 0"])
59
63
  else
60
64
  s.add_dependency(%q<log-me>, ["~> 0.0.2"])
61
- s.add_dependency(%q<nokogiri>, ["~> 1.5.0"])
62
- s.add_dependency(%q<sax-machine>, ["~> 0.1.0"])
63
- s.add_dependency(%q<bundler>, ["~> 1.0"])
65
+ s.add_dependency(%q<nokogiri>, ["~> 1.5"])
66
+ s.add_dependency(%q<sax-machine>, ["~> 0.1"])
64
67
  s.add_dependency(%q<fakeweb>, ["~> 1.3"])
65
68
  s.add_dependency(%q<jeweler>, ["~> 1.8"])
66
- s.add_dependency(%q<rspec>, ["~> 2.8"])
69
+ s.add_dependency(%q<rspec>, ["~> 2.9"])
67
70
  s.add_dependency(%q<ruby-debug>, [">= 0"])
68
71
  s.add_dependency(%q<ruby-debug19>, [">= 0"])
69
72
  end
70
73
  else
71
74
  s.add_dependency(%q<log-me>, ["~> 0.0.2"])
72
- s.add_dependency(%q<nokogiri>, ["~> 1.5.0"])
73
- s.add_dependency(%q<sax-machine>, ["~> 0.1.0"])
74
- s.add_dependency(%q<bundler>, ["~> 1.0"])
75
+ s.add_dependency(%q<nokogiri>, ["~> 1.5"])
76
+ s.add_dependency(%q<sax-machine>, ["~> 0.1"])
75
77
  s.add_dependency(%q<fakeweb>, ["~> 1.3"])
76
78
  s.add_dependency(%q<jeweler>, ["~> 1.8"])
77
- s.add_dependency(%q<rspec>, ["~> 2.8"])
79
+ s.add_dependency(%q<rspec>, ["~> 2.9"])
78
80
  s.add_dependency(%q<ruby-debug>, [">= 0"])
79
81
  s.add_dependency(%q<ruby-debug19>, [">= 0"])
80
82
  end
@@ -9,6 +9,7 @@ module Correios
9
9
  element :tipo
10
10
  element :status
11
11
  element :data
12
+ element :hora
12
13
  element :descricao
13
14
  element :recebedor
14
15
  element :documento
@@ -19,6 +20,12 @@ module Correios
19
20
  element :uf
20
21
  element :sto
21
22
  element :destino, :class => Correios::SRO::Destino
23
+
24
+ [:recebedor, :documento, :comentario].each do |method|
25
+ define_method "#{method}=" do |value|
26
+ instance_variable_set("@#{method}", value.to_s.strip)
27
+ end
28
+ end
22
29
  end
23
30
  end
24
31
  end
@@ -4,7 +4,7 @@ module Correios
4
4
  module Version
5
5
  MAJOR = 0
6
6
  MINOR = 0
7
- PATCH = 1
7
+ PATCH = 2
8
8
  VERSION = [MAJOR, MINOR, PATCH].join(".")
9
9
  end
10
10
  end
@@ -6,7 +6,7 @@ module Correios
6
6
  module SRO
7
7
  class WebService
8
8
  URL = "http://websro.correios.com.br/sro_bin/sroii_xml.eventos"
9
- TYPES = { :lista => "L", :intervalor => "F" }
9
+ TYPES = { :lista => "L", :intervalo => "F" }
10
10
  RESULTS = { :todos => "T", :ultimo => "U" }
11
11
 
12
12
  def initialize
@@ -0,0 +1,15 @@
1
+ # encoding: UTF-8
2
+ require 'spec_helper'
3
+
4
+ describe Correios::SRO::Evento do
5
+ let(:evento) { Correios::SRO::Evento.new }
6
+
7
+ [:recebedor, :documento, :comentario].each do |method|
8
+ describe "##{method}=" do
9
+ it "strips string" do
10
+ evento.send("#{method}=", " Texto. ")
11
+ evento.send(method).should == "Texto."
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,84 @@
1
+ # encoding: UTF-8
2
+ require 'spec_helper'
3
+
4
+ describe Correios::SRO::Parser do
5
+ describe "#objetos" do
6
+ before :each do
7
+ xml = body_for :success_response_many_objects
8
+ parser = Correios::SRO::Parser.new
9
+ @objetos = parser.objetos(xml)
10
+ end
11
+
12
+ ["SI047624825BR", "SX104110463BR"].each do |number|
13
+ it "returns object number" do
14
+ @objetos[number].numero.should == number
15
+ end
16
+ end
17
+
18
+ context "returns event" do
19
+ { "SI047624825BR" => {
20
+ :tipo => "BDI",
21
+ :status => "01",
22
+ :data => "26/12/2011",
23
+ :hora => "15:22",
24
+ :descricao => "Entregue",
25
+ :recebedor => "",
26
+ :documento => "",
27
+ :comentario => "?",
28
+ :local => "AC CENTRAL DE SAO PAULO",
29
+ :codigo => "01009972",
30
+ :cidade => "SAO PAULO",
31
+ :uf => "SP",
32
+ :sto => "00024419"
33
+ },
34
+ "SX104110463BR" => {
35
+ :tipo => "BDE",
36
+ :status => "01",
37
+ :data => "08/12/2011",
38
+ :hora => "09:30",
39
+ :descricao => "Entregue",
40
+ :recebedor => "",
41
+ :documento => "",
42
+ :comentario => "",
43
+ :local => "CEE JUNDIAI",
44
+ :codigo => "13211970",
45
+ :cidade => "JUNDIAI",
46
+ :uf => "SP",
47
+ :sto => "74654209"
48
+ },
49
+ }.each do |number, first_event|
50
+ first_event.each do |attr, value|
51
+ it attr do
52
+ evento = @objetos[number].eventos.first
53
+ evento.send(attr).should == value
54
+ end
55
+ end
56
+ end
57
+ end
58
+
59
+ context "returns destination" do
60
+ { "SI047624825BR" => {
61
+ :local => "CTE VILA MARIA",
62
+ :codigo => "02170975",
63
+ :cidade => "SAO PAULO",
64
+ :bairro => "PQ NOVO MUNDO",
65
+ :uf => "SP"
66
+ },
67
+ "SX104110463BR" => {
68
+ :local => "CTE CAMPINAS",
69
+ :codigo => "13050971",
70
+ :cidade => "VALINHOS",
71
+ :bairro => "MACUCO",
72
+ :uf => "SP"
73
+ },
74
+ }.each do |number, destination|
75
+ destination.each do |attr, value|
76
+ it attr do
77
+ destino = @objetos[number].eventos[3].destino
78
+ destino.send(attr).should == value
79
+ end
80
+ end
81
+ end
82
+ end
83
+ end
84
+ end
@@ -38,7 +38,10 @@ describe Correios::SRO::Rastreador do
38
38
  end
39
39
 
40
40
  describe "#consultar" do
41
- before(:each) { @sro = Correios::SRO::Rastreador.new :usuario => "USUARIO", :senha => "SENHA" }
41
+ before :each do
42
+ fake_request_for :success_response_many_objects
43
+ @sro = Correios::SRO::Rastreador.new :usuario => "USUARIO", :senha => "SENHA"
44
+ end
42
45
 
43
46
  it "sets objetos" do
44
47
  @sro.consultar("SQ458226057B", "RA132678652BR")
@@ -2,4 +2,13 @@
2
2
  require 'spec_helper'
3
3
 
4
4
  describe Correios::SRO::WebService do
5
+ describe "#request" do
6
+ let(:sro) { Correios::SRO::Rastreador.new }
7
+ let(:web_service) { Correios::SRO::WebService.new }
8
+
9
+ it "returns XML response" do
10
+ fake_request_for("<xml><fake></fake>")
11
+ web_service.request(sro).should == "<xml><fake></fake>"
12
+ end
13
+ end
5
14
  end
data/spec/spec_helper.rb CHANGED
@@ -1,13 +1,15 @@
1
1
  require 'correios-sro-xml'
2
+ require 'fakeweb'
3
+
4
+ # Requires supporting files with custom matchers and macros, etc,
5
+ # in ./support/ and its subdirectories.
6
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
2
7
 
3
- # This file was generated by the `rspec --init` command. Conventionally, all
4
- # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
5
- # Require this file using `require "spec_helper.rb"` to ensure that it is only
6
- # loaded once.
7
- #
8
8
  # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
9
9
  RSpec.configure do |config|
10
10
  config.treat_symbols_as_metadata_keys_with_true_values = true
11
11
  config.run_all_when_everything_filtered = true
12
12
  config.filter_run :focus
13
13
  end
14
+
15
+ FakeWeb.allow_net_connect = false
@@ -0,0 +1,19 @@
1
+ # encoding: UTF-8
2
+
3
+ def fake_request_for(response)
4
+ FakeWeb.register_uri(:post,
5
+ Regexp.new("http://websro.correios.com.br/sro_bin/sroii_xml.eventos"),
6
+ :status => 200,
7
+ :body => body_for(response))
8
+ end
9
+
10
+ def body_for(response)
11
+ case response
12
+ when :success_response_one_object
13
+ File.open(File.dirname(__FILE__) + "/responses/success-response-one-object.xml").read
14
+ when :success_response_many_objects
15
+ File.open(File.dirname(__FILE__) + "/responses/success-response-many-objects.xml").read
16
+ else
17
+ response
18
+ end
19
+ end
@@ -0,0 +1,186 @@
1
+ <?xml version="1.0" encoding="iso-8859-1" ?>
2
+ <sroxml>
3
+ <versao>1.0</versao>
4
+ <qtd>2</qtd>
5
+ <TipoPesquisa>Lista de Objetos</TipoPesquisa>
6
+ <TipoResultado>Todos os eventos</TipoResultado>
7
+ <objeto>
8
+ <numero>SI047624825BR</numero>
9
+ <evento>
10
+ <tipo>BDI</tipo>
11
+ <status>01</status>
12
+ <data>26/12/2011</data>
13
+ <hora>15:22</hora>
14
+ <descricao>Entregue</descricao>
15
+ <recebedor> </recebedor>
16
+ <documento> </documento>
17
+ <comentario>?</comentario>
18
+ <local>AC CENTRAL DE SAO PAULO</local>
19
+ <codigo>01009972</codigo>
20
+ <cidade>SAO PAULO</cidade>
21
+ <uf>SP</uf>
22
+ <sto>00024419</sto>
23
+ </evento>
24
+ <evento>
25
+ <tipo>LDI</tipo>
26
+ <status>01</status>
27
+ <data>24/12/2011</data>
28
+ <hora>12:14</hora>
29
+ <descricao>Aguardando retirada</descricao>
30
+ <local>AC CENTRAL DE SAO PAULO</local>
31
+ <codigo>01009972</codigo>
32
+ <cidade>SAO PAULO</cidade>
33
+ <uf>SP</uf>
34
+ <sto>00024419</sto>
35
+ </evento>
36
+ <evento>
37
+ <tipo>RO</tipo>
38
+ <status>01</status>
39
+ <data>24/12/2011</data>
40
+ <hora>06:26</hora>
41
+ <descricao>Encaminhado</descricao>
42
+ <local>CTE VILA MARIA</local>
43
+ <codigo>02170975</codigo>
44
+ <cidade>SAO PAULO</cidade>
45
+ <uf>SP</uf>
46
+ <sto>72626003</sto>
47
+ <destino>
48
+ <local>CDD SE</local>
49
+ <codigo>01009970</codigo>
50
+ <cidade>SAO PAULO</cidade>
51
+ <bairro>CENTRO</bairro>
52
+ <uf>SP</uf>
53
+ </destino>
54
+ </evento>
55
+ <evento>
56
+ <tipo>RO</tipo>
57
+ <status>01</status>
58
+ <data>23/12/2011</data>
59
+ <hora>17:12</hora>
60
+ <descricao>Encaminhado</descricao>
61
+ <local>AC JUNDIAI</local>
62
+ <codigo>13201970</codigo>
63
+ <cidade>JUNDIAI</cidade>
64
+ <uf>SP</uf>
65
+ <sto>74302043</sto>
66
+ <destino>
67
+ <local>CTE VILA MARIA</local>
68
+ <codigo>02170975</codigo>
69
+ <cidade>SAO PAULO</cidade>
70
+ <bairro>PQ NOVO MUNDO</bairro>
71
+ <uf>SP</uf>
72
+ </destino>
73
+ </evento>
74
+ <evento>
75
+ <tipo>PO</tipo>
76
+ <status>00</status>
77
+ <data>23/12/2011</data>
78
+ <hora>11:36</hora>
79
+ <descricao>Postado</descricao>
80
+ <local>AC JUNDIAI</local>
81
+ <codigo>13201970</codigo>
82
+ <cidade>JUNDIAI</cidade>
83
+ <uf>SP</uf>
84
+ <sto>74302043</sto>
85
+ </evento>
86
+ </objeto>
87
+ <objeto>
88
+ <numero>SX104110463BR</numero>
89
+ <evento>
90
+ <tipo>BDE</tipo>
91
+ <status>01</status>
92
+ <data>08/12/2011</data>
93
+ <hora>09:30</hora>
94
+ <descricao>Entregue</descricao>
95
+ <recebedor> </recebedor>
96
+ <documento> </documento>
97
+ <comentario> </comentario>
98
+ <local>CEE JUNDIAI</local>
99
+ <codigo>13211970</codigo>
100
+ <cidade>JUNDIAI</cidade>
101
+ <uf>SP</uf>
102
+ <sto>74654209</sto>
103
+ </evento>
104
+ <evento>
105
+ <tipo>OEC</tipo>
106
+ <status>01</status>
107
+ <data>08/12/2011</data>
108
+ <hora>07:03</hora>
109
+ <descricao>Saiu para entrega</descricao>
110
+ <local>CEE JUNDIAI</local>
111
+ <codigo>13211970</codigo>
112
+ <cidade>JUNDIAI</cidade>
113
+ <uf>SP</uf>
114
+ <sto>74654209</sto>
115
+ </evento>
116
+ <evento>
117
+ <tipo>RO</tipo>
118
+ <status>01</status>
119
+ <data>08/12/2011</data>
120
+ <hora>06:31</hora>
121
+ <descricao>Encaminhado</descricao>
122
+ <local>CTE CAMPINAS</local>
123
+ <codigo>13050971</codigo>
124
+ <cidade>VALINHOS</cidade>
125
+ <uf>SP</uf>
126
+ <sto>00048540</sto>
127
+ <destino>
128
+ <local>CEE JUNDIAI</local>
129
+ <codigo>13211970</codigo>
130
+ <cidade>JUNDIAI</cidade>
131
+ <bairro>BAIRRO</bairro>
132
+ <uf>SP</uf>
133
+ </destino>
134
+ </evento>
135
+ <evento>
136
+ <tipo>RO</tipo>
137
+ <status>01</status>
138
+ <data>07/12/2011</data>
139
+ <hora>22:43</hora>
140
+ <descricao>Encaminhado</descricao>
141
+ <local>CTE SAUDE</local>
142
+ <codigo>04293970</codigo>
143
+ <cidade>SAO PAULO</cidade>
144
+ <uf>SP</uf>
145
+ <sto>72620005</sto>
146
+ <destino>
147
+ <local>CTE CAMPINAS</local>
148
+ <codigo>13050971</codigo>
149
+ <cidade>VALINHOS</cidade>
150
+ <bairro>MACUCO</bairro>
151
+ <uf>SP</uf>
152
+ </destino>
153
+ </evento>
154
+ <evento>
155
+ <tipo>RO</tipo>
156
+ <status>01</status>
157
+ <data>07/12/2011</data>
158
+ <hora>18:27</hora>
159
+ <descricao>Encaminhado</descricao>
160
+ <local>ACF CARLOS GOMES</local>
161
+ <codigo>04743970</codigo>
162
+ <cidade>SAO PAULO</cidade>
163
+ <uf>SP</uf>
164
+ <sto>36905968</sto>
165
+ <destino>
166
+ <local>CTE SAUDE</local>
167
+ <codigo>04293970</codigo>
168
+ <cidade>SAO PAULO</cidade>
169
+ <bairro>JARDIM DA SAUDE</bairro>
170
+ <uf>SP</uf>
171
+ </destino>
172
+ </evento>
173
+ <evento>
174
+ <tipo>PO</tipo>
175
+ <status>00</status>
176
+ <data>07/12/2011</data>
177
+ <hora>16:30</hora>
178
+ <descricao>Postado</descricao>
179
+ <local>ACF CARLOS GOMES</local>
180
+ <codigo>04743970</codigo>
181
+ <cidade>SAO PAULO</cidade>
182
+ <uf>SP</uf>
183
+ <sto>36905968</sto>
184
+ </evento>
185
+ </objeto>
186
+ </sroxml>
@@ -0,0 +1,87 @@
1
+ <?xml version="1.0" encoding="iso-8859-1" ?>
2
+ <sroxml>
3
+ <versao>1.0</versao>
4
+ <qtd>1</qtd>
5
+ <TipoPesquisa>Lista de Objetos</TipoPesquisa>
6
+ <TipoResultado>Todos os eventos</TipoResultado>
7
+ <objeto>
8
+ <numero>SI047624825BR</numero>
9
+ <evento>
10
+ <tipo>BDI</tipo>
11
+ <status>01</status>
12
+ <data>26/12/2011</data>
13
+ <hora>15:22</hora>
14
+ <descricao>Entregue</descricao>
15
+ <recebedor> </recebedor>
16
+ <documento> </documento>
17
+ <comentario>?</comentario>
18
+ <local>AC CENTRAL DE SAO PAULO</local>
19
+ <codigo>01009972</codigo>
20
+ <cidade>SAO PAULO</cidade>
21
+ <uf>SP</uf>
22
+ <sto>00024419</sto>
23
+ </evento>
24
+ <evento>
25
+ <tipo>LDI</tipo>
26
+ <status>01</status>
27
+ <data>24/12/2011</data>
28
+ <hora>12:14</hora>
29
+ <descricao>Aguardando retirada</descricao>
30
+ <local>AC CENTRAL DE SAO PAULO</local>
31
+ <codigo>01009972</codigo>
32
+ <cidade>SAO PAULO</cidade>
33
+ <uf>SP</uf>
34
+ <sto>00024419</sto>
35
+ </evento>
36
+ <evento>
37
+ <tipo>RO</tipo>
38
+ <status>01</status>
39
+ <data>24/12/2011</data>
40
+ <hora>06:26</hora>
41
+ <descricao>Encaminhado</descricao>
42
+ <local>CTE VILA MARIA</local>
43
+ <codigo>02170975</codigo>
44
+ <cidade>SAO PAULO</cidade>
45
+ <uf>SP</uf>
46
+ <sto>72626003</sto>
47
+ <destino>
48
+ <local>CDD SE</local>
49
+ <codigo>01009970</codigo>
50
+ <cidade>SAO PAULO</cidade>
51
+ <bairro>CENTRO</bairro>
52
+ <uf>SP</uf>
53
+ </destino>
54
+ </evento>
55
+ <evento>
56
+ <tipo>RO</tipo>
57
+ <status>01</status>
58
+ <data>23/12/2011</data>
59
+ <hora>17:12</hora>
60
+ <descricao>Encaminhado</descricao>
61
+ <local>AC JUNDIAI</local>
62
+ <codigo>13201970</codigo>
63
+ <cidade>JUNDIAI</cidade>
64
+ <uf>SP</uf>
65
+ <sto>74302043</sto>
66
+ <destino>
67
+ <local>CTE VILA MARIA</local>
68
+ <codigo>02170975</codigo>
69
+ <cidade>SAO PAULO</cidade>
70
+ <bairro>PQ NOVO MUNDO</bairro>
71
+ <uf>SP</uf>
72
+ </destino>
73
+ </evento>
74
+ <evento>
75
+ <tipo>PO</tipo>
76
+ <status>00</status>
77
+ <data>23/12/2011</data>
78
+ <hora>11:36</hora>
79
+ <descricao>Postado</descricao>
80
+ <local>AC JUNDIAI</local>
81
+ <codigo>13201970</codigo>
82
+ <cidade>JUNDIAI</cidade>
83
+ <uf>SP</uf>
84
+ <sto>74302043</sto>
85
+ </evento>
86
+ </objeto>
87
+ </sroxml>
metadata CHANGED
@@ -1,125 +1,112 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: correios-sro-xml
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
4
5
  prerelease:
5
- version: 0.0.1
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Prodis a.k.a. Fernando Hamasaki
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2012-01-30 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
12
+ date: 2012-04-04 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
16
15
  name: log-me
17
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &11748970 !ruby/object:Gem::Requirement
18
17
  none: false
19
- requirements:
18
+ requirements:
20
19
  - - ~>
21
- - !ruby/object:Gem::Version
20
+ - !ruby/object:Gem::Version
22
21
  version: 0.0.2
23
22
  type: :runtime
24
23
  prerelease: false
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
24
+ version_requirements: *11748970
25
+ - !ruby/object:Gem::Dependency
27
26
  name: nokogiri
28
- requirement: &id002 !ruby/object:Gem::Requirement
27
+ requirement: &11748730 !ruby/object:Gem::Requirement
29
28
  none: false
30
- requirements:
29
+ requirements:
31
30
  - - ~>
32
- - !ruby/object:Gem::Version
33
- version: 1.5.0
31
+ - !ruby/object:Gem::Version
32
+ version: '1.5'
34
33
  type: :runtime
35
34
  prerelease: false
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
35
+ version_requirements: *11748730
36
+ - !ruby/object:Gem::Dependency
38
37
  name: sax-machine
39
- requirement: &id003 !ruby/object:Gem::Requirement
38
+ requirement: &11748490 !ruby/object:Gem::Requirement
40
39
  none: false
41
- requirements:
40
+ requirements:
42
41
  - - ~>
43
- - !ruby/object:Gem::Version
44
- version: 0.1.0
42
+ - !ruby/object:Gem::Version
43
+ version: '0.1'
45
44
  type: :runtime
46
45
  prerelease: false
47
- version_requirements: *id003
48
- - !ruby/object:Gem::Dependency
49
- name: bundler
50
- requirement: &id004 !ruby/object:Gem::Requirement
51
- none: false
52
- requirements:
53
- - - ~>
54
- - !ruby/object:Gem::Version
55
- version: "1.0"
56
- type: :development
57
- prerelease: false
58
- version_requirements: *id004
59
- - !ruby/object:Gem::Dependency
46
+ version_requirements: *11748490
47
+ - !ruby/object:Gem::Dependency
60
48
  name: fakeweb
61
- requirement: &id005 !ruby/object:Gem::Requirement
49
+ requirement: &11748250 !ruby/object:Gem::Requirement
62
50
  none: false
63
- requirements:
51
+ requirements:
64
52
  - - ~>
65
- - !ruby/object:Gem::Version
66
- version: "1.3"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.3'
67
55
  type: :development
68
56
  prerelease: false
69
- version_requirements: *id005
70
- - !ruby/object:Gem::Dependency
57
+ version_requirements: *11748250
58
+ - !ruby/object:Gem::Dependency
71
59
  name: jeweler
72
- requirement: &id006 !ruby/object:Gem::Requirement
60
+ requirement: &11748010 !ruby/object:Gem::Requirement
73
61
  none: false
74
- requirements:
62
+ requirements:
75
63
  - - ~>
76
- - !ruby/object:Gem::Version
77
- version: "1.8"
64
+ - !ruby/object:Gem::Version
65
+ version: '1.8'
78
66
  type: :development
79
67
  prerelease: false
80
- version_requirements: *id006
81
- - !ruby/object:Gem::Dependency
68
+ version_requirements: *11748010
69
+ - !ruby/object:Gem::Dependency
82
70
  name: rspec
83
- requirement: &id007 !ruby/object:Gem::Requirement
71
+ requirement: &11747770 !ruby/object:Gem::Requirement
84
72
  none: false
85
- requirements:
73
+ requirements:
86
74
  - - ~>
87
- - !ruby/object:Gem::Version
88
- version: "2.8"
75
+ - !ruby/object:Gem::Version
76
+ version: '2.9'
89
77
  type: :development
90
78
  prerelease: false
91
- version_requirements: *id007
92
- - !ruby/object:Gem::Dependency
79
+ version_requirements: *11747770
80
+ - !ruby/object:Gem::Dependency
93
81
  name: ruby-debug
94
- requirement: &id008 !ruby/object:Gem::Requirement
82
+ requirement: &11747530 !ruby/object:Gem::Requirement
95
83
  none: false
96
- requirements:
97
- - - ">="
98
- - !ruby/object:Gem::Version
99
- version: "0"
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
100
88
  type: :development
101
89
  prerelease: false
102
- version_requirements: *id008
103
- - !ruby/object:Gem::Dependency
90
+ version_requirements: *11747530
91
+ - !ruby/object:Gem::Dependency
104
92
  name: ruby-debug19
105
- requirement: &id009 !ruby/object:Gem::Requirement
93
+ requirement: &11763670 !ruby/object:Gem::Requirement
106
94
  none: false
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: "0"
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
111
99
  type: :development
112
100
  prerelease: false
113
- version_requirements: *id009
114
- description: Sistema de Rastreamento de Objetos dos Correios (SRO) utilizando o Web Service SRO XML, que permite a consulta de ate 50 encomendas simultaneamente.
101
+ version_requirements: *11763670
102
+ description: Sistema de Rastreamento de Objetos dos Correios (SRO) utilizando o Web
103
+ Service SRO XML, que permite a consulta de ate 50 encomendas simultaneamente.
115
104
  email: prodis@gmail.com
116
105
  executables: []
117
-
118
106
  extensions: []
119
-
120
- extra_rdoc_files:
107
+ extra_rdoc_files:
121
108
  - README.rdoc
122
- files:
109
+ files:
123
110
  - .rspec
124
111
  - CHANGELOG.rdoc
125
112
  - Gemfile
@@ -136,35 +123,37 @@ files:
136
123
  - lib/correios/sro/rastreador.rb
137
124
  - lib/correios/sro/version.rb
138
125
  - lib/correios/sro/web_service.rb
126
+ - spec/correios/sro/evento_spec.rb
127
+ - spec/correios/sro/parser_spec.rb
139
128
  - spec/correios/sro/rastreador_spec.rb
140
129
  - spec/correios/sro/web_service_spec.rb
141
130
  - spec/spec_helper.rb
131
+ - spec/support/fake_request.rb
132
+ - spec/support/responses/success-response-many-objects.xml
133
+ - spec/support/responses/success-response-one-object.xml
142
134
  homepage: http://github.com/prodis/correios-sro-xml
143
- licenses:
135
+ licenses:
144
136
  - MIT
145
137
  post_install_message:
146
138
  rdoc_options: []
147
-
148
- require_paths:
139
+ require_paths:
149
140
  - lib
150
- required_ruby_version: !ruby/object:Gem::Requirement
141
+ required_ruby_version: !ruby/object:Gem::Requirement
151
142
  none: false
152
- requirements:
153
- - - ">="
154
- - !ruby/object:Gem::Version
143
+ requirements:
144
+ - - ! '>='
145
+ - !ruby/object:Gem::Version
155
146
  version: 1.8.7
156
- required_rubygems_version: !ruby/object:Gem::Requirement
147
+ required_rubygems_version: !ruby/object:Gem::Requirement
157
148
  none: false
158
- requirements:
159
- - - ">="
160
- - !ruby/object:Gem::Version
161
- version: "0"
149
+ requirements:
150
+ - - ! '>='
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
162
153
  requirements: []
163
-
164
154
  rubyforge_project:
165
- rubygems_version: 1.8.11
155
+ rubygems_version: 1.8.16
166
156
  signing_key:
167
157
  specification_version: 3
168
158
  summary: Sistema de Rastreamento de Objetos dos Correios (SRO).
169
159
  test_files: []
170
-