rqrcode 0.8.0 → 0.9.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.
- checksums.yaml +4 -4
- data/CHANGELOG +10 -0
- data/README.md +12 -14
- data/Rakefile +4 -4
- data/lib/rqrcode/qrcode/qr_code.rb +115 -22
- data/lib/rqrcode/qrcode/qr_numeric.rb +2 -2
- data/lib/rqrcode/version.rb +1 -1
- data/test/test_helper.rb +5 -0
- data/test/test_regresions.rb +2 -13
- data/test/test_rqrcode.rb +40 -21
- data/test/test_rqrcode_export.rb +1 -18
- metadata +4 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1e8b487f591272b08e4fc7379f8ff16a7819459e
|
|
4
|
+
data.tar.gz: 5fc8e96a42d136b0cd76941d8a77316d207208e9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e2c4d056dc95bca8bb1a268567a0f19a3d48eaaa96d6888874ee4abde3d85db7d6ae3197e840e2085651fb0ebd8ded890421174816a75d12052a29b41bfb3895
|
|
7
|
+
data.tar.gz: b435943576d8a4c458e7392f0d7a69ed27a7ec3a05bc449523f2141b87e5f8c03e2fca35ce8ba64887787667d65c854655e2ec8449b1e2565daa40a1ad6f94a5
|
data/CHANGELOG
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
*0.9.0* (Jan 3, 2016)
|
|
2
|
+
|
|
3
|
+
- Added support for auto selecting qrcode size up to level 40. (only worked up to level 10 before)
|
|
4
|
+
- Added numeric support during auto selection of qrcode mode.
|
|
5
|
+
|
|
6
|
+
*0.8.1* (Jan 3, 2016)
|
|
7
|
+
|
|
8
|
+
- Remove active support specific `present?`.
|
|
9
|
+
- Fix so that all tests are run.
|
|
10
|
+
|
|
1
11
|
*0.8.0* (Dec 18, 2015)
|
|
2
12
|
|
|
3
13
|
- Added numeric QR code support
|
data/README.md
CHANGED
|
@@ -2,26 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://travis-ci.org/whomwah/rqrcode)
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*0.8.0* (Dec 18, 2015)
|
|
5
|
+
**All users of rqrcode are highly recomended to upgrade to version 0.5.5 ore later!**
|
|
8
6
|
|
|
9
|
-
|
|
10
|
-
- Dropped Ruby v1.8 support
|
|
7
|
+
## Short changelog
|
|
11
8
|
|
|
12
|
-
*0.
|
|
9
|
+
*0.9.0* (Jan 3, 2016)
|
|
13
10
|
|
|
14
|
-
- Added
|
|
11
|
+
- Added support for auto selecting qrcode size up to level 40. (only worked up to level 10 before)
|
|
12
|
+
- Added numeric support during auto selection of qrcode mode.
|
|
15
13
|
|
|
16
|
-
*0.
|
|
14
|
+
*0.8.1* (Jan 3, 2016)
|
|
17
15
|
|
|
18
|
-
-
|
|
19
|
-
|
|
16
|
+
- Remove active support specific `present?`.
|
|
17
|
+
- Fix so that all tests are run.
|
|
20
18
|
|
|
21
|
-
*0.
|
|
19
|
+
*0.8.0* (Dec 18, 2015)
|
|
22
20
|
|
|
23
|
-
-
|
|
24
|
-
|
|
21
|
+
- Added numeric QR code support
|
|
22
|
+
- Dropped Ruby v1.8 support
|
|
25
23
|
|
|
26
24
|
## Overview
|
|
27
25
|
|
|
@@ -29,7 +27,7 @@ rQRCode is a library for encoding QR Codes in Ruby. It has a simple interface wi
|
|
|
29
27
|
|
|
30
28
|
Let's clear up some rQRCode stuff.
|
|
31
29
|
|
|
32
|
-
* rQRCode is a
|
|
30
|
+
* rQRCode is a __ruby only library__ It requires no native libraries. Just Ruby!
|
|
33
31
|
* It is an encoding library. You can't decode QR codes with it.
|
|
34
32
|
* The interface is simple and assumes you just want to encode a string into a QR code
|
|
35
33
|
* QR code is trademarked by Denso Wave inc
|
data/Rakefile
CHANGED
|
@@ -3,11 +3,11 @@ require 'bundler'
|
|
|
3
3
|
|
|
4
4
|
Bundler::GemHelper.install_tasks
|
|
5
5
|
|
|
6
|
-
desc
|
|
6
|
+
desc 'Run tests'
|
|
7
7
|
Rake::TestTask.new do |t|
|
|
8
|
-
t.libs <<
|
|
9
|
-
t.libs <<
|
|
10
|
-
t.
|
|
8
|
+
t.libs << 'lib'
|
|
9
|
+
t.libs << 'test'
|
|
10
|
+
t.pattern = 'test/**/test_*.rb'
|
|
11
11
|
t.verbose = true
|
|
12
12
|
end
|
|
13
13
|
|
|
@@ -15,7 +15,6 @@ module RQRCode #:nodoc:
|
|
|
15
15
|
:mode_number => 1 << 0,
|
|
16
16
|
:mode_alpha_numk => 1 << 1,
|
|
17
17
|
:mode_8bit_byte => 1 << 2,
|
|
18
|
-
:mode_kanji => 1 << 3
|
|
19
18
|
}
|
|
20
19
|
|
|
21
20
|
QRMODE_NAME = {
|
|
@@ -59,23 +58,92 @@ module RQRCode #:nodoc:
|
|
|
59
58
|
QRFORMATINFOLENGTH = 15
|
|
60
59
|
|
|
61
60
|
#http://web.archive.org/web/20110710094955/http://www.denso-wave.com/qrcode/vertable1-e.html
|
|
61
|
+
#http://web.archive.org/web/20110710094955/http://www.denso-wave.com/qrcode/vertable2-e.html
|
|
62
|
+
#http://web.archive.org/web/20110710094955/http://www.denso-wave.com/qrcode/vertable3-e.html
|
|
63
|
+
#http://web.archive.org/web/20110710094955/http://www.denso-wave.com/qrcode/vertable4-e.html
|
|
64
|
+
# Each array contains levels max chars from level 1 to level 40
|
|
62
65
|
QRMAXDIGITS = {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
66
|
+
l: {
|
|
67
|
+
mode_number: [
|
|
68
|
+
41, 77, 127, 187, 255, 322, 370, 461, 552, 652, 772,
|
|
69
|
+
883, 1022, 1101, 1250, 1408, 1548, 1725, 1903, 2061,
|
|
70
|
+
2232, 2409, 2620, 2812, 3057, 3283, 3514, 3669, 3909, 4158,
|
|
71
|
+
4417, 4686, 4965, 5253, 5529, 5836, 6153, 6479, 6743, 7089
|
|
72
|
+
],
|
|
73
|
+
mode_alpha_numk: [
|
|
74
|
+
25, 47, 77, 114, 154, 195, 224, 279, 335, 395,
|
|
75
|
+
468, 535, 619, 667, 758, 854, 938, 1046, 1153, 1249,
|
|
76
|
+
1352, 1460, 1588, 1704, 1853, 1990, 2132, 2223, 2369, 2520,
|
|
77
|
+
2677, 2840, 3009, 3183, 3351, 3537, 3729, 3927, 4087, 4296
|
|
78
|
+
],
|
|
79
|
+
mode_8bit_byte: [
|
|
80
|
+
17, 32, 53, 78, 106, 134, 154, 192, 230, 271,
|
|
81
|
+
321, 367, 425, 458, 520, 586, 644, 718, 792, 858,
|
|
82
|
+
929, 1003, 1091, 1171, 1273, 1367, 1465, 1528, 1628, 1732,
|
|
83
|
+
1840, 1952, 2068, 2188, 2303, 2431, 2563, 2699, 2809, 2953
|
|
84
|
+
],
|
|
85
|
+
},
|
|
86
|
+
m: {
|
|
87
|
+
mode_number: [
|
|
88
|
+
34, 63, 101, 149, 202, 255, 293, 365, 432, 513,
|
|
89
|
+
604, 691, 796, 871, 991, 1082, 1212, 1346, 1500, 1600,
|
|
90
|
+
1708, 1872, 2059, 2188, 2395, 2544, 2701, 2857, 3035, 3289,
|
|
91
|
+
3486, 3693, 3909, 4134, 4343, 4588, 4775, 5039, 5313, 5596,
|
|
92
|
+
],
|
|
93
|
+
mode_alpha_numk: [
|
|
94
|
+
20, 38, 61, 90, 122, 154, 178, 221, 262, 311,
|
|
95
|
+
366, 419, 483, 528, 600, 656, 734, 816, 909, 970,
|
|
96
|
+
1035, 1134, 1248, 1326, 1451, 1542, 1637, 1732, 1839, 1994,
|
|
97
|
+
2113, 2238, 2369, 2506, 2632, 2780, 2894, 3054, 3220, 3391
|
|
98
|
+
],
|
|
99
|
+
mode_8bit_byte: [
|
|
100
|
+
14, 26, 42, 62, 84, 106, 122, 152, 180, 213,
|
|
101
|
+
251, 287, 331, 362, 412, 450, 504, 560, 624, 666,
|
|
102
|
+
711, 779, 857, 911, 997, 1059, 1125, 1190, 1264, 1370,
|
|
103
|
+
1452, 1538, 1628, 1722, 1809, 1911, 1989, 2099, 2213, 2331
|
|
104
|
+
],
|
|
105
|
+
},
|
|
106
|
+
q: {
|
|
107
|
+
mode_number: [
|
|
108
|
+
27, 48, 77, 111, 144, 178, 207, 259, 312, 364,
|
|
109
|
+
427, 489, 580, 621, 703, 775, 876, 948, 1063, 1159,
|
|
110
|
+
1224, 1358, 1468, 1588, 1718, 1804, 1933, 2085, 2181, 2358,
|
|
111
|
+
2473, 2670, 2805, 2949, 3081, 3244, 3417, 3599, 3791, 3993
|
|
112
|
+
],
|
|
113
|
+
mode_alpha_numk: [
|
|
114
|
+
16, 29, 47, 67, 87, 108, 125, 157, 189, 221,
|
|
115
|
+
259, 296, 352, 376, 426, 470, 531, 574, 644, 702,
|
|
116
|
+
742, 823, 890, 963, 1041, 1094, 1172, 1263, 1322, 1429,
|
|
117
|
+
1499, 1618, 1700, 1787, 1867, 1966, 2071, 2181, 2298, 2420
|
|
118
|
+
],
|
|
119
|
+
mode_8bit_byte: [
|
|
120
|
+
11, 20, 32, 46, 60, 74, 86, 108, 130, 151,
|
|
121
|
+
177, 203, 241, 258, 292, 22, 364, 394, 442, 482,
|
|
122
|
+
509, 565, 611, 661, 715, 751, 805, 868, 908, 982,
|
|
123
|
+
1030, 1112, 1168, 1228, 1283, 1351, 1423, 1499, 1579, 1663
|
|
124
|
+
],
|
|
125
|
+
},
|
|
126
|
+
h: {
|
|
127
|
+
mode_number: [
|
|
128
|
+
17, 34, 58, 82, 106, 139, 154, 202, 235, 288, 331, 374, 427, 468, 530, 602, 674,
|
|
129
|
+
331, 374, 427, 468, 530, 602, 674, 746, 813, 919,
|
|
130
|
+
969, 1056, 1108, 1228, 1286, 1425, 1501, 1581, 1677, 1782,
|
|
131
|
+
1897, 2022, 2157, 2301, 2361, 2524, 2625, 2735, 2927, 3057
|
|
132
|
+
|
|
133
|
+
],
|
|
134
|
+
mode_alpha_numk: [
|
|
135
|
+
10, 20, 35, 50, 64, 84, 93, 122, 143, 174, 200,
|
|
136
|
+
200, 227, 259, 283, 321, 365, 408, 452, 493, 557,
|
|
137
|
+
587, 640, 672, 744, 779, 864, 910, 958, 1016, 1080,
|
|
138
|
+
1150, 1226, 1307, 1394, 1431, 1530, 1591, 1658, 1774, 1852
|
|
139
|
+
],
|
|
140
|
+
mode_8bit_byte: [
|
|
141
|
+
7, 14, 24, 34, 44, 58, 64, 84, 98, 119,
|
|
142
|
+
137, 155, 177, 194, 220, 250, 280, 310, 338, 382,
|
|
143
|
+
403, 439, 461, 511, 535, 593, 625, 658, 698, 742,
|
|
144
|
+
790, 842, 898, 958, 983, 1051, 1093, 1139, 1219, 1273
|
|
145
|
+
],
|
|
146
|
+
},
|
|
79
147
|
}
|
|
80
148
|
|
|
81
149
|
|
|
@@ -94,7 +162,7 @@ module RQRCode #:nodoc:
|
|
|
94
162
|
#
|
|
95
163
|
|
|
96
164
|
class QRCode
|
|
97
|
-
attr_reader :modules, :module_count, :version
|
|
165
|
+
attr_reader :modules, :module_count, :version
|
|
98
166
|
|
|
99
167
|
# Expects a string to be parsed in, other args are optional
|
|
100
168
|
#
|
|
@@ -129,11 +197,19 @@ module RQRCode #:nodoc:
|
|
|
129
197
|
@data = string
|
|
130
198
|
|
|
131
199
|
mode = QRMODE_NAME[(options[:mode] || '').to_sym]
|
|
132
|
-
mode
|
|
200
|
+
# If mode is not explicitely given choose mode according to data type
|
|
201
|
+
mode ||= case
|
|
202
|
+
when RQRCode::QRNumeric.valid_data?(@data)
|
|
203
|
+
QRMODE_NAME[:number]
|
|
204
|
+
when QRAlphanumeric.valid_data?(@data)
|
|
205
|
+
QRMODE_NAME[:alphanumeric]
|
|
206
|
+
else
|
|
207
|
+
QRMODE_NAME[:byte_8bit]
|
|
208
|
+
end
|
|
133
209
|
|
|
134
210
|
max_size_array = QRMAXDIGITS[level][mode]
|
|
135
211
|
size = options[:size] || smallest_size_for(string, max_size_array)
|
|
136
|
-
|
|
212
|
+
|
|
137
213
|
if size > QRUtil.max_size
|
|
138
214
|
raise QRCodeArgumentError, "Given size greater than maximum possible size of #{QRUtil.max_size}"
|
|
139
215
|
end
|
|
@@ -205,14 +281,31 @@ module RQRCode #:nodoc:
|
|
|
205
281
|
end
|
|
206
282
|
rows << cols
|
|
207
283
|
end
|
|
208
|
-
|
|
284
|
+
|
|
209
285
|
quiet_zone_size.times do
|
|
210
286
|
rows.unshift(light * (rows.first.length / light.size))
|
|
211
287
|
rows << light * (rows.first.length / light.size)
|
|
212
|
-
end
|
|
288
|
+
end
|
|
213
289
|
rows.join("\n")
|
|
214
290
|
end
|
|
215
291
|
|
|
292
|
+
# Return a symbol for current error connection level
|
|
293
|
+
def error_correction_level
|
|
294
|
+
QRERRORCORRECTLEVEL.invert[@error_correct_level]
|
|
295
|
+
end
|
|
296
|
+
|
|
297
|
+
# Return a symbol in QRMODE.keys for current mode used
|
|
298
|
+
def mode
|
|
299
|
+
case @data_list
|
|
300
|
+
when QRNumeric
|
|
301
|
+
:mode_number
|
|
302
|
+
when QRAlphanumeric
|
|
303
|
+
:mode_alpha_numk
|
|
304
|
+
else
|
|
305
|
+
:mode_8bit_byte
|
|
306
|
+
end
|
|
307
|
+
end
|
|
308
|
+
|
|
216
309
|
protected
|
|
217
310
|
|
|
218
311
|
def make #:nodoc:
|
data/lib/rqrcode/version.rb
CHANGED
data/test/test_helper.rb
ADDED
data/test/test_regresions.rb
CHANGED
|
@@ -1,17 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
require "test/unit"
|
|
1
|
+
require 'test_helper'
|
|
3
2
|
|
|
4
|
-
|
|
5
|
-
unless Kernel.respond_to?(:require_relative)
|
|
6
|
-
module Kernel
|
|
7
|
-
def require_relative(path)
|
|
8
|
-
require File.join(File.dirname(caller[0]), path.to_str)
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
require_relative "../lib/rqrcode"
|
|
14
|
-
class RegresionTests < Test::Unit::TestCase
|
|
3
|
+
class RegresionTests < Minitest::Test
|
|
15
4
|
|
|
16
5
|
# Rs block information was incomplete.
|
|
17
6
|
def test_code_length_overflow_bug
|
data/test/test_rqrcode.rb
CHANGED
|
@@ -1,27 +1,16 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
|
-
require
|
|
2
|
+
require 'test_helper'
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
unless Kernel.respond_to?(:require_relative)
|
|
6
|
-
module Kernel
|
|
7
|
-
def require_relative(path)
|
|
8
|
-
require File.join(File.dirname(caller[0]), path.to_str)
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
require_relative "../lib/rqrcode"
|
|
14
|
-
|
|
15
|
-
class QRCodeTest < Test::Unit::TestCase
|
|
4
|
+
class QRCodeTest < Minitest::Test
|
|
16
5
|
require_relative "data"
|
|
17
6
|
|
|
18
7
|
def test_no_data_given
|
|
19
|
-
|
|
8
|
+
assert_raises(RQRCode::QRCodeArgumentError) {
|
|
20
9
|
RQRCode::QRCode.new( :size => 1, :level => :h )
|
|
21
10
|
RQRCode::QRCode.new( :size => 1 )
|
|
22
11
|
RQRCode::QRCode.new
|
|
23
12
|
}
|
|
24
|
-
|
|
13
|
+
assert_raises(RQRCode::QRCodeRunTimeError) {
|
|
25
14
|
qr = RQRCode::QRCode.new('duncan')
|
|
26
15
|
qr.is_dark(0,999999)
|
|
27
16
|
}
|
|
@@ -87,18 +76,36 @@ class QRCodeTest < Test::Unit::TestCase
|
|
|
87
76
|
qr.to_s( :true => 'q', :false => 'n' )[0..21]
|
|
88
77
|
assert_equal "@@@@@@@ @@ @ @@@@@@@\n", qr.to_s( :true => '@' )[0..21]
|
|
89
78
|
end
|
|
90
|
-
|
|
79
|
+
|
|
91
80
|
def test_auto_alphanumeric
|
|
92
81
|
# Overflowws without the alpha version
|
|
93
82
|
assert RQRCode::QRCode.new( '1234567890', :size => 1, :level => :h )
|
|
94
|
-
|
|
83
|
+
|
|
95
84
|
qr = RQRCode::QRCode.new( 'DUNCAN', :size => 1, :level => :h )
|
|
96
85
|
assert_equal "xxxxxxx xxx xxxxxxx\n", qr.to_s[0..21]
|
|
97
86
|
end
|
|
98
87
|
|
|
88
|
+
def test_auto_numeric
|
|
89
|
+
# When digit only automatically uses numeric mode, default ecc level is :h
|
|
90
|
+
digits = RQRCode::QRCode.new('1' * 17) # Version 1, numeric mode, ECC h
|
|
91
|
+
assert_equal 1, digits.version
|
|
92
|
+
assert_equal :mode_number, digits.mode
|
|
93
|
+
assert_equal :h, digits.error_correction_level
|
|
94
|
+
# When alpha automatically works
|
|
95
|
+
alpha = RQRCode::QRCode.new('X' * 10) # Version 1, alpha mode, ECC h
|
|
96
|
+
assert_equal 1, alpha.version
|
|
97
|
+
assert_equal :mode_alpha_numk, alpha.mode
|
|
98
|
+
assert_equal :h, alpha.error_correction_level
|
|
99
|
+
# Generic should use binary
|
|
100
|
+
binary = RQRCode::QRCode.new('x' * 7) # Version 1, 8bit mode, ECC h
|
|
101
|
+
assert_equal 1, binary.version
|
|
102
|
+
assert_equal :mode_8bit_byte, binary.mode
|
|
103
|
+
assert_equal :h, binary.error_correction_level
|
|
104
|
+
end
|
|
105
|
+
|
|
99
106
|
def test_numeric_2_M
|
|
100
107
|
data = '279042272585972554922067893753871413584876543211601021503002'
|
|
101
|
-
|
|
108
|
+
|
|
102
109
|
qr = RQRCode::QRCode.new(data, size: 2, level: :m, mode: :number)
|
|
103
110
|
assert_equal "xxxxxxx x x x xxxxxxx\n", qr.to_s[0..25]
|
|
104
111
|
end
|
|
@@ -108,13 +115,25 @@ class QRCodeTest < Test::Unit::TestCase
|
|
|
108
115
|
assert RQRCode::QRCode.new("40952", :size => 1, :level => :h)
|
|
109
116
|
assert RQRCode::QRCode.new("40932", :size => 1, :level => :h)
|
|
110
117
|
end
|
|
111
|
-
|
|
118
|
+
|
|
112
119
|
def test_exceed_max_size
|
|
113
|
-
|
|
120
|
+
assert_raises RQRCode::QRCodeArgumentError do
|
|
114
121
|
RQRCode::QRCode.new( 'duncan', :size => 41 )
|
|
115
122
|
end
|
|
116
123
|
end
|
|
117
124
|
|
|
125
|
+
def test_error_correction_level
|
|
126
|
+
# attr_reader was wrong
|
|
127
|
+
assert_equal RQRCode::QRCode.new('a', level: :h).error_correction_level, :h
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
def test_version_table
|
|
131
|
+
# tables in RQRCode::QRCode::QRMAXDIGITS wasn't updated to support greater versions
|
|
132
|
+
assert_equal RQRCode::QRCode.new('1' * 289, level: :h, mode: :number).version, 11
|
|
133
|
+
assert_equal RQRCode::QRCode.new('A' * 175, level: :h, mode: :alphanumeric).version, 11
|
|
134
|
+
assert_equal RQRCode::QRCode.new('a' * 383, level: :h, mode: :byte_8bit).version, 21
|
|
135
|
+
end
|
|
136
|
+
|
|
118
137
|
def test_levels
|
|
119
138
|
assert RQRCode::QRCode.new("duncan", :level => :l)
|
|
120
139
|
assert RQRCode::QRCode.new("duncan", :level => :m)
|
|
@@ -122,7 +141,7 @@ class QRCodeTest < Test::Unit::TestCase
|
|
|
122
141
|
assert RQRCode::QRCode.new("duncan", :level => :h)
|
|
123
142
|
|
|
124
143
|
%w(a b c d e f g i j k n o p r s t u v w x y z).each do |ltr|
|
|
125
|
-
|
|
144
|
+
assert_raises(RQRCode::QRCodeArgumentError) {
|
|
126
145
|
RQRCode::QRCode.new( "duncan", :level => ltr.to_sym )
|
|
127
146
|
}
|
|
128
147
|
end
|
data/test/test_rqrcode_export.rb
CHANGED
|
@@ -1,23 +1,6 @@
|
|
|
1
|
-
require '
|
|
2
|
-
require 'minitest/autorun'
|
|
3
|
-
|
|
4
|
-
require 'rqrcode/export/png'
|
|
5
|
-
require 'rqrcode/export/svg'
|
|
6
|
-
require 'rqrcode/export/html'
|
|
7
|
-
|
|
8
|
-
# fix for require_relative in < 1.9
|
|
9
|
-
unless Kernel.respond_to?(:require_relative)
|
|
10
|
-
module Kernel
|
|
11
|
-
def require_relative(path)
|
|
12
|
-
require File.join(File.dirname(caller[0]), path.to_str)
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
require_relative "../lib/rqrcode"
|
|
1
|
+
require 'test_helper'
|
|
18
2
|
|
|
19
3
|
describe :QRCodeExportTest do
|
|
20
|
-
# require_relative "data"
|
|
21
4
|
|
|
22
5
|
[:svg, :png, :html].each do |ext|
|
|
23
6
|
it "must respond_to #{ext}" do
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rqrcode
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.9.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Björn Blomqvist
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2016-01-03 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: chunky_png
|
|
@@ -96,6 +96,7 @@ files:
|
|
|
96
96
|
- lib/rqrcode/version.rb
|
|
97
97
|
- rqrcode.gemspec
|
|
98
98
|
- test/data.rb
|
|
99
|
+
- test/test_helper.rb
|
|
99
100
|
- test/test_regresions.rb
|
|
100
101
|
- test/test_rqrcode.rb
|
|
101
102
|
- test/test_rqrcode_export.rb
|
|
@@ -124,6 +125,7 @@ specification_version: 4
|
|
|
124
125
|
summary: A library to encode QR Codes
|
|
125
126
|
test_files:
|
|
126
127
|
- test/data.rb
|
|
128
|
+
- test/test_helper.rb
|
|
127
129
|
- test/test_regresions.rb
|
|
128
130
|
- test/test_rqrcode.rb
|
|
129
131
|
- test/test_rqrcode_export.rb
|