vatman 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|