steuernummer 1.1.1 → 1.1.2

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.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- YzNkZDA0ZjBkN2VlNzgxZmRmZDM1YTJmZTVhZDRiYzE2ZjVkM2I1NA==
5
- data.tar.gz: !binary |-
6
- NjgzNjVhMDk0OGUwMGNiZTBlZTFlNzQ3NWZjMjI4ZjRlYWE3MzFmNw==
2
+ SHA1:
3
+ metadata.gz: 62d2a843c3de7adc0970807d22a32071701ec40f
4
+ data.tar.gz: 44c13bfafe90a44ecefa11ae2163c9a57af98378
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- MzE5MTUyYWEyZmVlMjlkYzc2YTMzNGRmYmYzZDI5Mzg4N2JmYTFmNDZmNDRh
10
- ZTQyNDM3Y2Q0Yjg4MzU0YjE3YzdiYWQxNWY5OTBiYzA4NjM3YmRiNTJjOTY0
11
- NzcxNGQwOTBhMTlhMDllMzIzMTgwNmY4ZGM1ZmU5ODEyMmUwNTg=
12
- data.tar.gz: !binary |-
13
- Mjg1ZDk5MjBmYTFmMWFjNTA3Mzc5MGY4YmViMTY0YmU3YTE5YTY2MmNmNzM2
14
- MDk4MTZiNWIzZGZiYzc4NTAwNDA1M2QyY2FmZWVjNDIwM2JiODJmN2Q0NmMz
15
- MDdhNTYxNDQzMTVmY2QwYjkyMWRiZDlhMzFjNDRkZjdhNGQxOGI=
6
+ metadata.gz: a00dba8b6b2b1810fe4e0906f58060a9aed656bf02156495b230651580402aabf5b23afe8d4466fd349e9f609fb3442e59d2ef1caac02ff7002578e525f2ae32
7
+ data.tar.gz: 4ffcf78196ea9ebde0321a31a89567f3b08d234331c1d0312c7507328f7647ee5bc1e0af7877212e10f866cfea0ad0539b90a4a5bb42501cfe43e351aa89b558
data/README.md CHANGED
@@ -23,28 +23,51 @@ Or install it yourself as:
23
23
 
24
24
  Validate your German Steuernummer
25
25
 
26
- Example:
27
- >> tax_no = Steuernummer.new("93815/08152", 'Baden-Württemberg')
28
- >> tax_no.is_valid?
29
- >> => true
26
+ ``` ruby
27
+ # Arguments:
28
+ # steuernummer: (String) -- regional or countrywide number
29
+ # region: (String) -- 'unknown' or one of Steuernummer.valid_regions
30
30
 
31
- >> tax_no.country_wide_number
32
- >> => {:number => '2893081508152', :region => Baden-Württemberg')
33
31
 
32
+
33
+ Example:
34
+ >> tax_no = Steuernummer.new("93815/08152", 'Baden-Württemberg')
35
+ >> tax_no.is_valid?
36
+ => true
37
+
38
+ >> tax_no.country_wide_number
39
+ => {:number => '2893081508152', :region => 'Baden-Württemberg')
40
+
41
+ # ----------------------------------------------------------------
42
+
34
43
  >> tax_no = Steuernummer.new("28FF0BBBUUUUP")
35
44
  >> tax_no.is_valid?
36
- >> => true
37
-
45
+ => true
46
+
47
+ >> tax_no.region_wide_number
48
+ => {:number => '93815/08152', :region => 'Baden-Württemberg')
49
+
50
+ # ----------------------------------------------------------------
51
+
52
+ >> tax_no = Steuernummer.new('151/815/08156','unknown')
53
+ >> tax_no.is_valid?
54
+ => true
38
55
 
39
56
  >> tax_no.region_wide_number
40
- >> => {:number => '93815/08152', :region => Baden-Württemberg')
41
-
57
+ => {:number => '151/815/08156', :region => 'unknown'}
58
+
59
+ >> tax_no.country_wide_number
60
+ => RuntimeError: "Can't determine country wide number for a region wide number without knowing the region...."
61
+
62
+
63
+ # ----------------------------------------------------------------
64
+
65
+ >> Steuernummer.valid_regions
66
+ => ["Baden-Württemberg", "Bayern", "Berlin", "Brandenburg",....]
42
67
 
43
- Arguments:
44
- steuernummer: (String)
45
- region: (String)
46
68
 
47
69
 
70
+ ```
48
71
  ## Contributing
49
72
 
50
73
  1. Fork it
@@ -91,9 +91,9 @@ class Steuernummer::TaxTable
91
91
  :to_country_wide => lambda {|ff,bbb,uuuu,p| "31#{ff}0#{bbb}#{uuuu}#{p}"}},
92
92
 
93
93
  {:region => 'Schleswig-Holstein',
94
- :match_pattern_region => /\A(?<ff>\d{2})\s(?<bbb>\d{3})\s(?<uuuu>\d{4})(?<p>\d{1})\z/,
94
+ :match_pattern_region => /\A(?<ff>\d{2})[\/](?<bbb>\d{3})[\/](?<uuuu>\d{4})(?<p>\d{1})\z/,
95
95
  :match_pattern_country => /\A21(?<ff>\d{2})0(?<bbb>\d{3})(?<uuuu>\d{4})(?<p>\d{1})\z/ ,
96
- :to_region_wide => lambda {|ff,bbb,uuuu,p| "#{ff} #{bbb} #{uuuu}#{p}"},
96
+ :to_region_wide => lambda {|ff,bbb,uuuu,p| "#{ff}/#{bbb}/#{uuuu}#{p}"},
97
97
  :to_country_wide => lambda {|ff,bbb,uuuu,p| "21#{ff}0#{bbb}#{uuuu}#{p}"}},
98
98
 
99
99
  {:region => 'Thüringen',
@@ -1,3 +1,3 @@
1
1
  class Steuernummer
2
- VERSION = "1.1.1"
2
+ VERSION = "1.1.2"
3
3
  end
@@ -20,7 +20,7 @@ class TestSteuernummer < Test::Unit::TestCase
20
20
  ['Saarland', '010/815/08182', '1010081508182'],
21
21
  ['Sachsen', '201/123/12340', '3201012312340'],
22
22
  ['Sachsen-Anhalt', '101/815/08154', '3101081508154'],
23
- ['Schleswig-Holstein', '29 815 08158', '2129081508158'],
23
+ ['Schleswig-Holstein', '29/815/08158', '2129081508158'],
24
24
  ['Thüringen', '151/815/08156', '4151081508156']
25
25
  ]
26
26
  end
metadata CHANGED
@@ -1,41 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: steuernummer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bart Ariens
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-22 00:00:00.000000000 Z
11
+ date: 2017-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.3'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ! '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ! '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  description: Validates with regex the German Steuernummer and allows to return the
@@ -46,7 +46,7 @@ executables: []
46
46
  extensions: []
47
47
  extra_rdoc_files: []
48
48
  files:
49
- - .gitignore
49
+ - ".gitignore"
50
50
  - Gemfile
51
51
  - LICENSE.txt
52
52
  - README.md
@@ -66,17 +66,17 @@ require_paths:
66
66
  - lib
67
67
  required_ruby_version: !ruby/object:Gem::Requirement
68
68
  requirements:
69
- - - ! '>='
69
+ - - ">="
70
70
  - !ruby/object:Gem::Version
71
71
  version: '0'
72
72
  required_rubygems_version: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ! '>='
74
+ - - ">="
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  requirements: []
78
78
  rubyforge_project:
79
- rubygems_version: 2.1.11
79
+ rubygems_version: 2.4.5
80
80
  signing_key:
81
81
  specification_version: 4
82
82
  summary: Simple regex validator for German Steuernummer