iso8583 0.2.3 → 0.2.4
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 +5 -5
- data/AUTHORS +2 -0
- data/CHANGELOG +5 -0
- data/Rakefile +1 -2
- data/lib/iso8583/berlin.rb +1 -1
- data/lib/iso8583/codec.rb +1 -1
- data/lib/iso8583/fields.rb +22 -0
- data/lib/iso8583/message.rb +7 -3
- data/lib/iso8583/version.rb +1 -1
- data/test/BitmapTests.rb +3 -3
- data/test/message_test.rb +10 -3
- data/test/test_codec.rb +8 -8
- data/test/test_fields.rb +9 -7
- metadata +15 -16
- data/Gemfile.lock +0 -38
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 4c551d563390f55d323d8aea190eb31b20dcc98f786a9f872faa5df24fd229d1
|
4
|
+
data.tar.gz: c448bfe8446285da07c61ac8b5cfbb908477cf98a9e1bf703cfdae47d17cb2c9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1fe629ddc4d985d96b63d20e6bacfb7e9c7d7cbe429232a9dcb8f5e972f9be5e0263bb675e11d78e272de4a3c58d0ced9a7a8b2646e2f94d64d0aea8b632f66c
|
7
|
+
data.tar.gz: 05bb98f645a560bf44bc2b64884a301b0869f7df1b7694291c82d991abe21538df5b8a08d57ab716e8e30482770e9db8dc6f49146de2ba36aa9640e355265329
|
data/AUTHORS
CHANGED
data/CHANGELOG
CHANGED
data/Rakefile
CHANGED
@@ -84,7 +84,6 @@ spec = Gem::Specification.new do |s|
|
|
84
84
|
s.requirements << "none"
|
85
85
|
s.require_path = "lib"
|
86
86
|
s.description = LONG_DESC
|
87
|
-
s.has_rdoc = true
|
88
87
|
s.authors = ["Tim Becker", "Slava Kravchenko"]
|
89
88
|
s.email = ["tim.becker@kuriositaet.de","cordawyn@gmail.com"]
|
90
89
|
s.homepage = "http://github.com/a2800276/8583/"
|
@@ -125,7 +124,7 @@ end
|
|
125
124
|
Rake::TestTask.new do |t|
|
126
125
|
t.libs << "test"
|
127
126
|
t.libs << "."
|
128
|
-
t.ruby_opts = ["-
|
127
|
+
t.ruby_opts = ["-rrubygems"]
|
129
128
|
t.test_files = FileList["test/*.rb"]
|
130
129
|
t.verbose = true
|
131
130
|
end
|
data/lib/iso8583/berlin.rb
CHANGED
data/lib/iso8583/codec.rb
CHANGED
data/lib/iso8583/fields.rb
CHANGED
@@ -57,63 +57,75 @@ module ISO8583
|
|
57
57
|
}
|
58
58
|
|
59
59
|
LL_BCD = BCDField.new
|
60
|
+
LL_BCD.name = "LL_BCD"
|
60
61
|
LL_BCD.length = 2
|
61
62
|
LL_BCD.codec = Packed_Number
|
62
63
|
|
63
64
|
# Two byte variable length ASCII numeral, payload ASCII numerals
|
64
65
|
LLVAR_N = Field.new
|
66
|
+
LLVAR_N.name = "LLVAR_N"
|
65
67
|
LLVAR_N.length = LL
|
66
68
|
LLVAR_N.codec = ASCII_Number
|
67
69
|
|
68
70
|
# Three byte variable length ASCII numeral, payload ASCII numerals
|
69
71
|
LLLVAR_N = Field.new
|
72
|
+
LLLVAR_N.name = "LLLVAR_N"
|
70
73
|
LLLVAR_N.length = LLL
|
71
74
|
LLLVAR_N.codec = ASCII_Number
|
72
75
|
|
73
76
|
# Two byte variable length ASCII numeral, payload Track2 data
|
74
77
|
LLVAR_Z = Field.new
|
78
|
+
LLVAR_Z.name = "LLVAR_Z"
|
75
79
|
LLVAR_Z.length = LL
|
76
80
|
LLVAR_Z.codec = Track2
|
77
81
|
|
78
82
|
# Two byte variable length ASCII numeral, payload ASCII, fixed length, zeropadded (right)
|
79
83
|
LLVAR_AN = Field.new
|
84
|
+
LLVAR_AN.name = "LLVAR_AN"
|
80
85
|
LLVAR_AN.length = LL
|
81
86
|
LLVAR_AN.codec = AN_Codec
|
82
87
|
|
83
88
|
# Two byte variable length ASCII numeral, payload ASCII+special
|
84
89
|
LLVAR_ANS = Field.new
|
90
|
+
LLVAR_ANS.name = "LLVAR_ANS"
|
85
91
|
LLVAR_ANS.length = LL
|
86
92
|
LLVAR_ANS.codec = ANS_Codec
|
87
93
|
|
88
94
|
# Three byte variable length ASCII numeral, payload ASCII, fixed length, zeropadded (right)
|
89
95
|
LLLVAR_AN = Field.new
|
96
|
+
LLLVAR_AN.name = "LLLVAR_AN"
|
90
97
|
LLLVAR_AN.length = LLL
|
91
98
|
LLLVAR_AN.codec = AN_Codec
|
92
99
|
|
93
100
|
# Three byte variable length ASCII numeral, payload ASCII+special
|
94
101
|
LLLVAR_ANS = Field.new
|
102
|
+
LLLVAR_ANS.name = "LLLVAR_ANS"
|
95
103
|
LLLVAR_ANS.length = LLL
|
96
104
|
LLLVAR_ANS.codec = ANS_Codec
|
97
105
|
|
98
106
|
# Two byte variable length binary payload
|
99
107
|
LLVAR_B = Field.new
|
108
|
+
LLVAR_B.name = "LLVAR_B"
|
100
109
|
LLVAR_B.length = LL
|
101
110
|
LLVAR_B.codec = Null_Codec
|
102
111
|
|
103
112
|
|
104
113
|
# Three byte variable length binary payload
|
105
114
|
LLLVAR_B = Field.new
|
115
|
+
LLLVAR_B.name = "LLLVAR_B"
|
106
116
|
LLLVAR_B.length = LLL
|
107
117
|
LLLVAR_B.codec = Null_Codec
|
108
118
|
|
109
119
|
# Fixed lengh numerals, repesented in ASCII, padding right justified using zeros
|
110
120
|
N = Field.new
|
121
|
+
N.name = "N"
|
111
122
|
N.codec = ASCII_Number
|
112
123
|
N.padding = lambda {|val, len|
|
113
124
|
sprintf("%0#{len}d", val)
|
114
125
|
}
|
115
126
|
|
116
127
|
N_BCD = BCDField.new
|
128
|
+
N_BCD.name = "N_BCD"
|
117
129
|
N_BCD.codec = Packed_Number
|
118
130
|
|
119
131
|
PADDING_LEFT_JUSTIFIED_SPACES = lambda {|val, len|
|
@@ -122,25 +134,30 @@ module ISO8583
|
|
122
134
|
|
123
135
|
# Fixed length ASCII letters [A-Za-z]
|
124
136
|
A = Field.new
|
137
|
+
A.name = "A"
|
125
138
|
A.codec = A_Codec
|
126
139
|
|
127
140
|
# Fixed lengh ASCII [A-Za-z0-9], padding left justified using spaces.
|
128
141
|
AN = Field.new
|
142
|
+
AN.name = "AN"
|
129
143
|
AN.codec = AN_Codec
|
130
144
|
AN.padding = PADDING_LEFT_JUSTIFIED_SPACES
|
131
145
|
|
132
146
|
# Fixed lengh ASCII [A-Za-z0-9] and space, padding left, spaces
|
133
147
|
ANP = Field.new
|
148
|
+
ANP.name = "ANP"
|
134
149
|
ANP.codec = ANP_Codec
|
135
150
|
ANP.padding = PADDING_LEFT_JUSTIFIED_SPACES
|
136
151
|
|
137
152
|
# Fixed length ASCII [\x20-\x7E], padding left, spaces
|
138
153
|
ANS = Field.new
|
154
|
+
ANS.name = ANS
|
139
155
|
ANS.codec = ANS_Codec
|
140
156
|
ANS.padding = PADDING_LEFT_JUSTIFIED_SPACES
|
141
157
|
|
142
158
|
# Binary data, padding left using nulls (0x00)
|
143
159
|
B = Field.new
|
160
|
+
B.name = "B"
|
144
161
|
B.codec = Null_Codec
|
145
162
|
B.padding = lambda {|val, len|
|
146
163
|
while val.length < len
|
@@ -151,24 +168,29 @@ module ISO8583
|
|
151
168
|
|
152
169
|
# Date, formatted as described in ASCII numerals
|
153
170
|
MMDDhhmmss = Field.new
|
171
|
+
MMDDhhmmss.name = "MMDDhhmmss"
|
154
172
|
MMDDhhmmss.codec = MMDDhhmmssCodec
|
155
173
|
MMDDhhmmss.length = 10
|
156
174
|
|
157
175
|
#Date, formatted as described in ASCII numerals
|
158
176
|
YYMMDDhhmmss = Field.new
|
177
|
+
YYMMDDhhmmss.name = "YYMMDDhhmmss"
|
159
178
|
YYMMDDhhmmss.codec = YYMMDDhhmmssCodec
|
160
179
|
YYMMDDhhmmss.length = 12
|
161
180
|
|
162
181
|
#Date, formatted as described in ASCII numerals
|
163
182
|
YYMM = Field.new
|
183
|
+
YYMM.name = "YYMM"
|
164
184
|
YYMM.codec = YYMMCodec
|
165
185
|
YYMM.length = 4
|
166
186
|
|
167
187
|
MMDD = Field.new
|
188
|
+
MMDD.name = "MMDD"
|
168
189
|
MMDD.codec = MMDDCodec
|
169
190
|
MMDD.length = 4
|
170
191
|
|
171
192
|
Hhmmss = Field.new
|
193
|
+
Hhmmss.name = "Hhmmss"
|
172
194
|
Hhmmss.codec = HhmmssCodec
|
173
195
|
Hhmmss.length = 6
|
174
196
|
|
data/lib/iso8583/message.rb
CHANGED
@@ -135,7 +135,7 @@ module ISO8583
|
|
135
135
|
# mes = MyMessage.new
|
136
136
|
# mes.mti = 1100 # or mes.mti = "Authorization Request Acquirer Gateway"
|
137
137
|
def mti=(value)
|
138
|
-
num,
|
138
|
+
num, _ = _get_mti_definition(value)
|
139
139
|
@mti = num
|
140
140
|
end
|
141
141
|
|
@@ -343,15 +343,19 @@ module ISO8583
|
|
343
343
|
# @values[bmp] = bmp_def
|
344
344
|
}
|
345
345
|
end
|
346
|
-
|
346
|
+
|
347
347
|
# Parse the bytes `str` returning a message of the defined type.
|
348
|
+
#
|
349
|
+
# returns an instance of Message
|
350
|
+
#
|
351
|
+
# will raise an ISO8583Exception if the bitmap definition can't be found
|
348
352
|
def parse(str)
|
349
353
|
str = str.force_encoding('ASCII-8BIT')
|
350
354
|
message = self.new
|
351
355
|
message.mti, rest = _mti_format.parse(str)
|
352
356
|
bmp,rest = Bitmap.parse(rest)
|
353
357
|
bmp.each {|bit|
|
354
|
-
bmp_def =
|
358
|
+
bmp_def = message._get_definition(bit)
|
355
359
|
value, rest = bmp_def.field.parse(rest)
|
356
360
|
message[bit] = value
|
357
361
|
}
|
data/lib/iso8583/version.rb
CHANGED
data/test/BitmapTests.rb
CHANGED
@@ -22,14 +22,14 @@ class BitmapTests < Test::Unit::TestCase
|
|
22
22
|
|
23
23
|
assert_raises(ISO8583Exception) {b.set 1000 }
|
24
24
|
assert_raises(ISO8583Exception) { b.set 1 }
|
25
|
-
assert_raises(ISO8583Exception) { b.set
|
25
|
+
assert_raises(ISO8583Exception) { b.set(-1) }
|
26
26
|
end
|
27
27
|
|
28
28
|
def test_out_of_bounds_errors
|
29
29
|
b = Bitmap.new
|
30
30
|
assert_raises(ISO8583Exception) {b.set 1000 }
|
31
31
|
assert_raises(ISO8583Exception) { b.set 1 }
|
32
|
-
assert_raises(ISO8583Exception) { b.set
|
32
|
+
assert_raises(ISO8583Exception) { b.set(-1) }
|
33
33
|
end
|
34
34
|
|
35
35
|
def test_parse_bmp
|
@@ -82,7 +82,7 @@ class BitmapTests < Test::Unit::TestCase
|
|
82
82
|
tst = "\x80\x00\x10\x20\x40\x81\x02\x04\x08\x10\x20\x40\x81\x02\x04\x08"
|
83
83
|
bmp = Bitmap.new tst
|
84
84
|
arr = []
|
85
|
-
|
85
|
+
bmp.each{|bit|
|
86
86
|
arr.push bit
|
87
87
|
}
|
88
88
|
assert_equal 20, arr.first
|
data/test/message_test.rb
CHANGED
@@ -38,18 +38,25 @@ class MessageTest < Test::Unit::TestCase
|
|
38
38
|
pan = 474747474747
|
39
39
|
|
40
40
|
assert_raises(ISO8583Exception) {
|
41
|
-
|
41
|
+
BerlinMessage.parse "@\000\000\000\000\000\000\00012474747474747"
|
42
42
|
}
|
43
43
|
mes = BerlinMessage.parse "1430@\000\000\000\000\000\000\00012474747474747"
|
44
44
|
assert_equal pan, mes.pan
|
45
45
|
assert_equal 1430, mes.mti
|
46
46
|
end
|
47
47
|
|
48
|
+
def test_unknown_field
|
49
|
+
assert_raises(ISO8583Exception.new("no definition for field: 8")) {
|
50
|
+
mes = BerlinMessage.parse "1430A\000\000\000\000\000\000\00012474747474747"
|
51
|
+
}
|
52
|
+
end
|
53
|
+
|
48
54
|
def test_rescue_standard_error
|
49
55
|
rescued = false
|
50
56
|
begin
|
51
57
|
BerlinMessage.parse("bogus")
|
52
58
|
rescue => error
|
59
|
+
assert_instance_of ISO8583Exception, error
|
53
60
|
rescued = true
|
54
61
|
end
|
55
62
|
|
@@ -168,8 +175,8 @@ END
|
|
168
175
|
mes[64] = "\xF0\xF0\xF0\xF0"
|
169
176
|
|
170
177
|
bytes = mes.to_b
|
171
|
-
mes2 = BerlinMessage.parse(
|
172
|
-
assert_equal(
|
178
|
+
mes2 = BerlinMessage.parse(bytes)
|
179
|
+
assert_equal(bytes, mes2.to_b)
|
173
180
|
end
|
174
181
|
|
175
182
|
def test_remove_field
|
data/test/test_codec.rb
CHANGED
@@ -101,7 +101,7 @@ class FieldTest < Test::Unit::TestCase
|
|
101
101
|
end
|
102
102
|
def test_A_Codec
|
103
103
|
assert_raise(ISO8583Exception) {
|
104
|
-
|
104
|
+
A_Codec.encode "!!!"
|
105
105
|
}
|
106
106
|
assert_equal "bla", AN_Codec.encode("bla")
|
107
107
|
assert_equal "bla", AN_Codec.decode("bla")
|
@@ -109,7 +109,7 @@ class FieldTest < Test::Unit::TestCase
|
|
109
109
|
|
110
110
|
def test_AN_Codec
|
111
111
|
assert_raise(ISO8583Exception) {
|
112
|
-
|
112
|
+
AN_Codec.encode "!!!"
|
113
113
|
}
|
114
114
|
assert_equal "bla", AN_Codec.encode("bla")
|
115
115
|
assert_equal "bla", AN_Codec.decode("bla")
|
@@ -117,10 +117,10 @@ class FieldTest < Test::Unit::TestCase
|
|
117
117
|
|
118
118
|
def test_Track2_Codec
|
119
119
|
assert_raise(ISO8583Exception) {
|
120
|
-
|
120
|
+
Track2.encode "!!!"
|
121
121
|
}
|
122
122
|
assert_raise(ISO8583Exception) {
|
123
|
-
|
123
|
+
Track2.encode ";12312312=123?5"
|
124
124
|
}
|
125
125
|
assert_equal ";123123123=123?5", Track2.encode(";123123123=123?5")
|
126
126
|
assert_equal ";123123123=123?5", Track2.decode(";123123123=123?5")
|
@@ -133,10 +133,10 @@ class FieldTest < Test::Unit::TestCase
|
|
133
133
|
assert_equal "\x02", Packed_Number.encode(2)
|
134
134
|
assert_equal "\x02\x55", Packed_Number.encode(0xff)
|
135
135
|
assert_raise(ISO8583Exception) {
|
136
|
-
|
136
|
+
Packed_Number.encode ";12312312=123?5"
|
137
137
|
}
|
138
138
|
assert_raise(ISO8583Exception) {
|
139
|
-
|
139
|
+
Packed_Number.encode "F"
|
140
140
|
}
|
141
141
|
end
|
142
142
|
|
@@ -145,7 +145,7 @@ class FieldTest < Test::Unit::TestCase
|
|
145
145
|
BE_U16.encode 2**16
|
146
146
|
}
|
147
147
|
assert_raise(ISO8583Exception) {
|
148
|
-
BE_U16.encode
|
148
|
+
BE_U16.encode(-1)
|
149
149
|
}
|
150
150
|
assert_equal "\0\0", BE_U16.encode(0)
|
151
151
|
expected = "\xff\xff".force_encoding('ASCII-8BIT')
|
@@ -164,7 +164,7 @@ class FieldTest < Test::Unit::TestCase
|
|
164
164
|
BE_U32.encode 2**32
|
165
165
|
}
|
166
166
|
assert_raise(ISO8583Exception) {
|
167
|
-
BE_U32.encode
|
167
|
+
BE_U32.encode(-1)
|
168
168
|
}
|
169
169
|
assert_equal "\0\0\0\0", BE_U32.encode(0)
|
170
170
|
expected = "\xff\xff\xff\xff".force_encoding('ASCII-8BIT')
|
data/test/test_fields.rb
CHANGED
@@ -10,7 +10,7 @@ class FieldTest < Test::Unit::TestCase
|
|
10
10
|
assert_equal "456", rest
|
11
11
|
|
12
12
|
assert_raise(ISO8583ParseException) {
|
13
|
-
|
13
|
+
_,rest = LLL.parse "12"
|
14
14
|
}
|
15
15
|
|
16
16
|
enc = LLL.encode 123
|
@@ -50,10 +50,10 @@ class FieldTest < Test::Unit::TestCase
|
|
50
50
|
assert_equal "123ABC", value
|
51
51
|
assert_equal "", rest
|
52
52
|
assert_raise(ISO8583ParseException) {
|
53
|
-
|
53
|
+
_,rest = LLLVAR_AN.parse "12"
|
54
54
|
}
|
55
55
|
assert_raise(ISO8583ParseException) {
|
56
|
-
|
56
|
+
_,rest = LLVAR_AN.parse "12123"
|
57
57
|
}
|
58
58
|
|
59
59
|
enc = LLVAR_AN.encode "123A"
|
@@ -83,10 +83,10 @@ class FieldTest < Test::Unit::TestCase
|
|
83
83
|
assert_equal 1234, value
|
84
84
|
assert_equal "", rest
|
85
85
|
assert_raise(ISO8583ParseException) {
|
86
|
-
|
86
|
+
_,rest = LLLVAR_N.parse "12"
|
87
87
|
}
|
88
88
|
assert_raise(ISO8583ParseException) {
|
89
|
-
|
89
|
+
_,rest = LLVAR_N.parse "12123"
|
90
90
|
}
|
91
91
|
|
92
92
|
enc = LLVAR_N.encode 1234
|
@@ -116,10 +116,10 @@ class FieldTest < Test::Unit::TestCase
|
|
116
116
|
assert_equal ";123123123=123?5", value
|
117
117
|
assert_equal "", rest
|
118
118
|
assert_raise(ISO8583ParseException) {
|
119
|
-
|
119
|
+
_,rest = LLVAR_Z.parse "12"
|
120
120
|
}
|
121
121
|
assert_raise(ISO8583ParseException) {
|
122
|
-
|
122
|
+
_,rest = LLVAR_Z.parse "17;123123123=123?5"
|
123
123
|
}
|
124
124
|
|
125
125
|
enc = LLVAR_Z.encode ";123123123=123?5"
|
@@ -213,6 +213,7 @@ class FieldTest < Test::Unit::TestCase
|
|
213
213
|
fld.length=3
|
214
214
|
value, rest = fld.parse "\x01\x23\x45"
|
215
215
|
assert_equal 123, value
|
216
|
+
assert_equal "\x45", rest
|
216
217
|
|
217
218
|
assert_equal "\x01\x23", fld.encode(123)
|
218
219
|
assert_equal "\x01\x23", fld.encode("123")
|
@@ -241,6 +242,7 @@ class FieldTest < Test::Unit::TestCase
|
|
241
242
|
assert_equal 12, dt.hour
|
242
243
|
assert_equal 34, dt.min
|
243
244
|
assert_equal 56, dt.sec
|
245
|
+
assert_equal "", rest
|
244
246
|
|
245
247
|
assert_raise(ISO8583Exception) {
|
246
248
|
fld.encode 1234567
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: iso8583
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Becker
|
@@ -9,10 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-07-04 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
|
-
description:
|
15
|
-
|
14
|
+
description: 'Ruby implementation of ISO 8583 financial messaging
|
15
|
+
|
16
|
+
'
|
16
17
|
email:
|
17
18
|
- tim.becker@kuriositaet.de
|
18
19
|
- cordawyn@gmail.com
|
@@ -20,6 +21,13 @@ executables: []
|
|
20
21
|
extensions: []
|
21
22
|
extra_rdoc_files: []
|
22
23
|
files:
|
24
|
+
- AUTHORS
|
25
|
+
- CHANGELOG
|
26
|
+
- Gemfile
|
27
|
+
- LICENSE
|
28
|
+
- README.md
|
29
|
+
- Rakefile
|
30
|
+
- TODO
|
23
31
|
- lib/8583.rb
|
24
32
|
- lib/iso8583.rb
|
25
33
|
- lib/iso8583/berlin.rb
|
@@ -31,14 +39,6 @@ files:
|
|
31
39
|
- lib/iso8583/message.rb
|
32
40
|
- lib/iso8583/util.rb
|
33
41
|
- lib/iso8583/version.rb
|
34
|
-
- AUTHORS
|
35
|
-
- CHANGELOG
|
36
|
-
- Gemfile
|
37
|
-
- Gemfile.lock
|
38
|
-
- LICENSE
|
39
|
-
- README.md
|
40
|
-
- Rakefile
|
41
|
-
- TODO
|
42
42
|
- test/BitmapTests.rb
|
43
43
|
- test/message_test.rb
|
44
44
|
- test/test_codec.rb
|
@@ -55,18 +55,17 @@ require_paths:
|
|
55
55
|
- lib
|
56
56
|
required_ruby_version: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
|
-
- -
|
58
|
+
- - ">="
|
59
59
|
- !ruby/object:Gem::Version
|
60
60
|
version: '0'
|
61
61
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
62
62
|
requirements:
|
63
|
-
- -
|
63
|
+
- - ">="
|
64
64
|
- !ruby/object:Gem::Version
|
65
65
|
version: '0'
|
66
66
|
requirements:
|
67
67
|
- none
|
68
|
-
|
69
|
-
rubygems_version: 2.0.14.1
|
68
|
+
rubygems_version: 3.1.2
|
70
69
|
signing_key:
|
71
70
|
specification_version: 4
|
72
71
|
summary: 'iso8583: Ruby implementation of ISO 8583 financial messaging'
|
data/Gemfile.lock
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
iso8583 (0.3.0)
|
5
|
-
test-unit (~> 3.0.0)
|
6
|
-
|
7
|
-
GEM
|
8
|
-
remote: https://rubygems.org/
|
9
|
-
specs:
|
10
|
-
diff-lcs (1.2.5)
|
11
|
-
power_assert (0.2.4)
|
12
|
-
rake (10.4.2)
|
13
|
-
rspec (3.3.0)
|
14
|
-
rspec-core (~> 3.3.0)
|
15
|
-
rspec-expectations (~> 3.3.0)
|
16
|
-
rspec-mocks (~> 3.3.0)
|
17
|
-
rspec-core (3.3.2)
|
18
|
-
rspec-support (~> 3.3.0)
|
19
|
-
rspec-expectations (3.3.1)
|
20
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
21
|
-
rspec-support (~> 3.3.0)
|
22
|
-
rspec-mocks (3.3.2)
|
23
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
24
|
-
rspec-support (~> 3.3.0)
|
25
|
-
rspec-support (3.3.0)
|
26
|
-
test-unit (3.0.9)
|
27
|
-
power_assert
|
28
|
-
|
29
|
-
PLATFORMS
|
30
|
-
ruby
|
31
|
-
|
32
|
-
DEPENDENCIES
|
33
|
-
iso8583!
|
34
|
-
rake
|
35
|
-
rspec (~> 3.3.0)
|
36
|
-
|
37
|
-
BUNDLED WITH
|
38
|
-
1.10.6
|