vatman 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data.tar.gz.sig +2 -0
- data/Manifest +5 -0
- data/Rakefile +12 -0
- data/lib/vatman.rb +29 -0
- data/test/test_helper.rb +2 -0
- data/test/test_vatman.rb +18 -0
- data/vatman.gemspec +33 -0
- metadata +100 -0
- metadata.gz.sig +0 -0
data.tar.gz.sig
ADDED
data/Manifest
ADDED
data/Rakefile
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'rake'
|
3
|
+
require 'echoe'
|
4
|
+
|
5
|
+
Echoe.new('vatman', '0.1.0') do |p|
|
6
|
+
p.description = "A gem that checks VAT numbers against the Europa web service"
|
7
|
+
p.url = "http://github.com/neilmiddleton/vatman"
|
8
|
+
p.author = "Neil Middleton"
|
9
|
+
p.email = "neilmiddleton @nospam@ gmail.com"
|
10
|
+
p.ignore_pattern = ["tmp/*", "script/*"]
|
11
|
+
p.development_dependencies = []
|
12
|
+
end
|
data/lib/vatman.rb
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'soap/wsdlDriver'
|
2
|
+
|
3
|
+
class Vatman
|
4
|
+
def initialize(country, number)
|
5
|
+
@country, @number = country, number
|
6
|
+
end
|
7
|
+
|
8
|
+
def name
|
9
|
+
get_variable(:name)
|
10
|
+
end
|
11
|
+
|
12
|
+
def address
|
13
|
+
get_variable(:address)
|
14
|
+
end
|
15
|
+
|
16
|
+
def valid?
|
17
|
+
get_variable(:valid) == 'true'
|
18
|
+
end
|
19
|
+
|
20
|
+
private
|
21
|
+
|
22
|
+
def response
|
23
|
+
@response ||= SOAP::WSDLDriverFactory.new('http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl').create_rpc_driver.checkVat(:countryCode => @country, :vatNumber => @number)
|
24
|
+
end
|
25
|
+
|
26
|
+
def get_variable(var)
|
27
|
+
response.send(var) if response.respond_to?(var)
|
28
|
+
end
|
29
|
+
end
|
data/test/test_helper.rb
ADDED
data/test/test_vatman.rb
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
class TestVatman < Test::Unit::TestCase
|
2
|
+
|
3
|
+
def setup
|
4
|
+
end
|
5
|
+
|
6
|
+
def test_vatman
|
7
|
+
v = Vatman.new('GB', 802925148)
|
8
|
+
assert v.valid?
|
9
|
+
assert_equal 'MONOCHROME LIMITED', v.name
|
10
|
+
assert_equal "SUITE K\nTHE PAVILLIONS\n1 WESTERN ROAD\nEPSOM\nSURREY\nKT17 1JG", v.address
|
11
|
+
|
12
|
+
v = Vatman.new('GB', 123456789)
|
13
|
+
assert !v.valid?
|
14
|
+
|
15
|
+
v = Vatman.new('GB', "abcdefg")
|
16
|
+
assert !v.valid?
|
17
|
+
end
|
18
|
+
end
|
data/vatman.gemspec
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.name = %q{vatman}
|
5
|
+
s.version = "0.1.0"
|
6
|
+
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
|
+
s.authors = ["Neil Middleton"]
|
9
|
+
s.cert_chain = ["/Users/neil/.ssh/gem-public_cert.pem"]
|
10
|
+
s.date = %q{2010-09-24}
|
11
|
+
s.description = %q{A gem that checks VAT numbers against the Europa web service}
|
12
|
+
s.email = %q{neilmiddleton @nospam@ gmail.com}
|
13
|
+
s.extra_rdoc_files = ["lib/vatman.rb"]
|
14
|
+
s.files = ["Rakefile", "lib/vatman.rb", "test/test_helper.rb", "test/test_vatman.rb", "Manifest", "vatman.gemspec"]
|
15
|
+
s.homepage = %q{http://github.com/neilmiddleton/vatman}
|
16
|
+
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Vatman", "--main", "Readme.rdoc"]
|
17
|
+
s.require_paths = ["lib"]
|
18
|
+
s.rubyforge_project = %q{vatman}
|
19
|
+
s.rubygems_version = %q{1.3.7}
|
20
|
+
s.signing_key = %q{/Users/neil/.ssh/gem-private_key.pem}
|
21
|
+
s.summary = %q{A gem that checks VAT numbers against the Europa web service}
|
22
|
+
s.test_files = ["test/test_helper.rb", "test/test_vatman.rb"]
|
23
|
+
|
24
|
+
if s.respond_to? :specification_version then
|
25
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
26
|
+
s.specification_version = 3
|
27
|
+
|
28
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
29
|
+
else
|
30
|
+
end
|
31
|
+
else
|
32
|
+
end
|
33
|
+
end
|
metadata
ADDED
@@ -0,0 +1,100 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: vatman
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 27
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 1
|
9
|
+
- 0
|
10
|
+
version: 0.1.0
|
11
|
+
platform: ruby
|
12
|
+
authors:
|
13
|
+
- Neil Middleton
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain:
|
17
|
+
- |
|
18
|
+
-----BEGIN CERTIFICATE-----
|
19
|
+
MIIDPjCCAiagAwIBAgIBADANBgkqhkiG9w0BAQUFADBFMRcwFQYDVQQDDA5uZWls
|
20
|
+
Lm1pZGRsZXRvbjEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQB
|
21
|
+
GRYDY29tMB4XDTEwMDkyNDExMjA1N1oXDTExMDkyNDExMjA1N1owRTEXMBUGA1UE
|
22
|
+
AwwObmVpbC5taWRkbGV0b24xFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmS
|
23
|
+
JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMLC
|
24
|
+
iWrSruPF5YovUpZRTrhJspJx6cXDtGCnrgLp8PFcT8MGI7OhRzSGGD+vxNvJsifR
|
25
|
+
9v9zyliXK/lPSOifQXbTtcr4dMK8Jb1bgZg+E/5cVy0G674vRkQQTzCZ6NH+ZxhB
|
26
|
+
wzNH9RtmszlPT2AQrXcNQ9fYS7v22X6vhsBf+inE5eT31V5vgws8ME4SIdZq9qmY
|
27
|
+
naFwbdLpYYE6qT7UHZdePpUXAM++cOh67Vh2qde0VIZ0wGxZpWHyJk57z3i5N7Da
|
28
|
+
Me3FZHRdwDObYrKZbJgQgmStkuOja6idPG+/ONTtv6qFZxGMCwWue5n6JjANSkwO
|
29
|
+
M3P28BbipRpwfCBOIF0CAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
|
30
|
+
HQYDVR0OBBYEFBbDYvZ4H9E5K2a0hUUVhDoVXKPQMA0GCSqGSIb3DQEBBQUAA4IB
|
31
|
+
AQAro6wdwChkL326Pwjgpwo5BR/Funix94lNTaFq7nYLaIi/TFjw1u5s0pqDEM8P
|
32
|
+
ypS0TFV1loQprbRWdl1lVdL/hiX7JxXTiNrnSQDY3/VHBzkrjteRBkfyS20Sf3jB
|
33
|
+
dAlsNpRvBtaGrOIaWZATC0IcQGK3DGcBDisv6e6W6P+9fDX1XwtXTuICX1DHYA1D
|
34
|
+
GB6kBgQkQd2QjP6DRGyrlL2fbl2Oev0FqFjfZ9mRiD8ef1ACER1GnDsKg/9OnYGs
|
35
|
+
Ks8MiYUeZO7w/+79LBtvPSg67211h78g3knsqPrMy+IZClqFLeDmD2L34Gs9Wfq4
|
36
|
+
oWbD/eYyk9swj1CrllXihsbD
|
37
|
+
-----END CERTIFICATE-----
|
38
|
+
|
39
|
+
date: 2010-09-24 00:00:00 +01:00
|
40
|
+
default_executable:
|
41
|
+
dependencies: []
|
42
|
+
|
43
|
+
description: A gem that checks VAT numbers against the Europa web service
|
44
|
+
email: neilmiddleton @nospam@ gmail.com
|
45
|
+
executables: []
|
46
|
+
|
47
|
+
extensions: []
|
48
|
+
|
49
|
+
extra_rdoc_files:
|
50
|
+
- lib/vatman.rb
|
51
|
+
files:
|
52
|
+
- Rakefile
|
53
|
+
- lib/vatman.rb
|
54
|
+
- test/test_helper.rb
|
55
|
+
- test/test_vatman.rb
|
56
|
+
- Manifest
|
57
|
+
- vatman.gemspec
|
58
|
+
has_rdoc: true
|
59
|
+
homepage: http://github.com/neilmiddleton/vatman
|
60
|
+
licenses: []
|
61
|
+
|
62
|
+
post_install_message:
|
63
|
+
rdoc_options:
|
64
|
+
- --line-numbers
|
65
|
+
- --inline-source
|
66
|
+
- --title
|
67
|
+
- Vatman
|
68
|
+
- --main
|
69
|
+
- Readme.rdoc
|
70
|
+
require_paths:
|
71
|
+
- lib
|
72
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ">="
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
hash: 3
|
78
|
+
segments:
|
79
|
+
- 0
|
80
|
+
version: "0"
|
81
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
82
|
+
none: false
|
83
|
+
requirements:
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
hash: 11
|
87
|
+
segments:
|
88
|
+
- 1
|
89
|
+
- 2
|
90
|
+
version: "1.2"
|
91
|
+
requirements: []
|
92
|
+
|
93
|
+
rubyforge_project: vatman
|
94
|
+
rubygems_version: 1.3.7
|
95
|
+
signing_key:
|
96
|
+
specification_version: 3
|
97
|
+
summary: A gem that checks VAT numbers against the Europa web service
|
98
|
+
test_files:
|
99
|
+
- test/test_helper.rb
|
100
|
+
- test/test_vatman.rb
|
metadata.gz.sig
ADDED
Binary file
|