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 +3 -0
- data/Gemfile +3 -4
- data/Gemfile.lock +14 -15
- data/README.rdoc +5 -0
- data/correios-sro-xml.gemspec +18 -16
- data/lib/correios/sro/evento.rb +7 -0
- data/lib/correios/sro/version.rb +1 -1
- data/lib/correios/sro/web_service.rb +1 -1
- data/spec/correios/sro/evento_spec.rb +15 -0
- data/spec/correios/sro/parser_spec.rb +84 -0
- data/spec/correios/sro/rastreador_spec.rb +4 -1
- data/spec/correios/sro/web_service_spec.rb +9 -0
- data/spec/spec_helper.rb +7 -5
- data/spec/support/fake_request.rb +19 -0
- data/spec/support/responses/success-response-many-objects.xml +186 -0
- data/spec/support/responses/success-response-one-object.xml +87 -0
- metadata +76 -87
data/CHANGELOG.rdoc
CHANGED
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
|
5
|
-
gem "sax-machine", "~> 0.1
|
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.
|
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.
|
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.
|
20
|
+
nokogiri (1.5.2)
|
21
21
|
rake (0.9.2.2)
|
22
|
-
rbx-require-relative (0.0.
|
22
|
+
rbx-require-relative (0.0.9)
|
23
23
|
rdoc (3.12)
|
24
24
|
json (~> 1.4)
|
25
|
-
rspec (2.
|
26
|
-
rspec-core (~> 2.
|
27
|
-
rspec-expectations (~> 2.
|
28
|
-
rspec-mocks (~> 2.
|
29
|
-
rspec-core (2.
|
30
|
-
rspec-expectations (2.
|
31
|
-
diff-lcs (~> 1.1.
|
32
|
-
rspec-mocks (2.
|
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
|
60
|
-
rspec (~> 2.
|
58
|
+
nokogiri (~> 1.5)
|
59
|
+
rspec (~> 2.9)
|
61
60
|
ruby-debug
|
62
61
|
ruby-debug19
|
63
|
-
sax-machine (~> 0.1
|
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
|
|
data/correios-sro-xml.gemspec
CHANGED
@@ -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.
|
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-
|
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.
|
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
|
52
|
-
s.add_runtime_dependency(%q<sax-machine>, ["~> 0.1
|
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.
|
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
|
62
|
-
s.add_dependency(%q<sax-machine>, ["~> 0.1
|
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.
|
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
|
73
|
-
s.add_dependency(%q<sax-machine>, ["~> 0.1
|
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.
|
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
|
data/lib/correios/sro/evento.rb
CHANGED
@@ -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
|
data/lib/correios/sro/version.rb
CHANGED
@@ -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", :
|
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
|
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
|
-
|
14
|
-
|
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: &
|
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: *
|
26
|
-
- !ruby/object:Gem::Dependency
|
24
|
+
version_requirements: *11748970
|
25
|
+
- !ruby/object:Gem::Dependency
|
27
26
|
name: nokogiri
|
28
|
-
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
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '1.5'
|
34
33
|
type: :runtime
|
35
34
|
prerelease: false
|
36
|
-
version_requirements: *
|
37
|
-
- !ruby/object:Gem::Dependency
|
35
|
+
version_requirements: *11748730
|
36
|
+
- !ruby/object:Gem::Dependency
|
38
37
|
name: sax-machine
|
39
|
-
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
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0.1'
|
45
44
|
type: :runtime
|
46
45
|
prerelease: false
|
47
|
-
version_requirements: *
|
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: &
|
49
|
+
requirement: &11748250 !ruby/object:Gem::Requirement
|
62
50
|
none: false
|
63
|
-
requirements:
|
51
|
+
requirements:
|
64
52
|
- - ~>
|
65
|
-
- !ruby/object:Gem::Version
|
66
|
-
version:
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.3'
|
67
55
|
type: :development
|
68
56
|
prerelease: false
|
69
|
-
version_requirements: *
|
70
|
-
- !ruby/object:Gem::Dependency
|
57
|
+
version_requirements: *11748250
|
58
|
+
- !ruby/object:Gem::Dependency
|
71
59
|
name: jeweler
|
72
|
-
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:
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '1.8'
|
78
66
|
type: :development
|
79
67
|
prerelease: false
|
80
|
-
version_requirements: *
|
81
|
-
- !ruby/object:Gem::Dependency
|
68
|
+
version_requirements: *11748010
|
69
|
+
- !ruby/object:Gem::Dependency
|
82
70
|
name: rspec
|
83
|
-
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:
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '2.9'
|
89
77
|
type: :development
|
90
78
|
prerelease: false
|
91
|
-
version_requirements: *
|
92
|
-
- !ruby/object:Gem::Dependency
|
79
|
+
version_requirements: *11747770
|
80
|
+
- !ruby/object:Gem::Dependency
|
93
81
|
name: ruby-debug
|
94
|
-
requirement: &
|
82
|
+
requirement: &11747530 !ruby/object:Gem::Requirement
|
95
83
|
none: false
|
96
|
-
requirements:
|
97
|
-
- -
|
98
|
-
- !ruby/object:Gem::Version
|
99
|
-
version:
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
100
88
|
type: :development
|
101
89
|
prerelease: false
|
102
|
-
version_requirements: *
|
103
|
-
- !ruby/object:Gem::Dependency
|
90
|
+
version_requirements: *11747530
|
91
|
+
- !ruby/object:Gem::Dependency
|
104
92
|
name: ruby-debug19
|
105
|
-
requirement: &
|
93
|
+
requirement: &11763670 !ruby/object:Gem::Requirement
|
106
94
|
none: false
|
107
|
-
requirements:
|
108
|
-
- -
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version:
|
95
|
+
requirements:
|
96
|
+
- - ! '>='
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
111
99
|
type: :development
|
112
100
|
prerelease: false
|
113
|
-
version_requirements: *
|
114
|
-
description: Sistema de Rastreamento de Objetos dos Correios (SRO) utilizando o Web
|
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:
|
149
|
+
requirements:
|
150
|
+
- - ! '>='
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
162
153
|
requirements: []
|
163
|
-
|
164
154
|
rubyforge_project:
|
165
|
-
rubygems_version: 1.8.
|
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
|
-
|