magnet 1.4.0 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MzU4NDg2NjQ1YzEzOGQyY2MwN2YyYjA3MGRhOGM5NmMzODM3Y2MzMQ==
5
+ data.tar.gz: !binary |-
6
+ MzY0M2E2ZmUyOTNiMDM5Y2E2N2E0NjVkYWQwY2MwNGYxNTUxOWM5Mg==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ Mjc3NGI2NmE3YWM2MTcyNmM3Y2Y4NjgzYzlmZGNjZjkwYjc1MWQ2OGIyMTYw
10
+ ZDEyODAzN2JhYTg3ZDMzNWM4ODdlNWM4OGRiOTliMjQ2YjYyZjQ5MDBjZTBi
11
+ OTY0MGRlZTJkZWY4YWRmNTAzZDZkYmNlNzlkZGEyYmRmMGU1OWU=
12
+ data.tar.gz: !binary |-
13
+ NjE0MTM1MjVlZGVmNDcxNWNhMjE3OTFkZTQzNzJkY2ZmOThlNjQ2NDE5MGE0
14
+ N2I5MWMwNzE3MzJjN2M5ZTRmZDg2YjFhYjljNGJjZWE3MzRjNmJmY2U3ZTU2
15
+ NzlmNTg4MWEwMzJhOWE3Yzc1ZjgxYjk0M2M1NjNhZjVmZGZhODA=
@@ -1,7 +1,7 @@
1
1
  module Magnet
2
2
  class Parser
3
3
  TRACKS = {
4
- 1 => /\A%(?<format>[A-Z])(?<pan>[0-9 ]{1,19})\^(?<name>[A-Za-z0-9.'&_!@#\$\%*\\~,"\-\/ *]{0,26})\^(?<expiration>\d{4}|\^)(?<service_code>\d{3}|\^)(?<discretionary_data>[^\?]*)\?\Z/,
4
+ 1 => /\A%(?<format>[A-Z])(?<pan>[0-9 ]{1,19})\^(?<name>[^^]*)\^(?<expiration>\d{4}|\^)(?<service_code>\d{3}|\^)(?<discretionary_data>[^\?]*)\?\Z/,
5
5
  2 => /\A;(?<format>[A-Z])(?<pan>[0-9 ]{1,19})=(?<expiration>\d{4}|=)(?<service_code>\d{3}|=)(?<discretionary_data>[^\?]*)\?\Z/
6
6
  }.freeze
7
7
 
@@ -1,3 +1,3 @@
1
1
  module Magnet
2
- VERSION = "1.4.0"
2
+ VERSION = "1.5.0"
3
3
  end
@@ -184,5 +184,10 @@ describe Magnet::Parser do
184
184
  assert_equal "ALISON,MAYNE/B", attributes[:name]
185
185
  end
186
186
 
187
+ it "should parse track data with 27 character names" do
188
+ attributes = @parser.parse("%B4717270000000000^ALISON,MAYNE/B /^0000000000000000000000000000000?")
189
+
190
+ assert_equal "ALISON,MAYNE/B /", attributes[:name]
191
+ end
187
192
  end
188
193
  end
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: magnet
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
5
- prerelease:
4
+ version: 1.5.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Samuel Kadolph
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-10-10 00:00:00.000000000 Z
11
+ date: 2013-10-29 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: minitest
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: mocha
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ~>
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ~>
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rake
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -75,27 +68,26 @@ files:
75
68
  - test/magnet/parser_test.rb
76
69
  homepage: http://samuelkadolph.github.com/magnet/
77
70
  licenses: []
71
+ metadata: {}
78
72
  post_install_message:
79
73
  rdoc_options: []
80
74
  require_paths:
81
75
  - lib
82
76
  required_ruby_version: !ruby/object:Gem::Requirement
83
- none: false
84
77
  requirements:
85
78
  - - ! '>='
86
79
  - !ruby/object:Gem::Version
87
80
  version: 1.9.2
88
81
  required_rubygems_version: !ruby/object:Gem::Requirement
89
- none: false
90
82
  requirements:
91
83
  - - ! '>='
92
84
  - !ruby/object:Gem::Version
93
85
  version: '0'
94
86
  requirements: []
95
87
  rubyforge_project:
96
- rubygems_version: 1.8.23
88
+ rubygems_version: 2.1.10
97
89
  signing_key:
98
- specification_version: 3
90
+ specification_version: 4
99
91
  summary: magnet is a library for decoding the track data on magnetic stripe cards.
100
92
  test_files:
101
93
  - test/magnet/card_test.rb