utf8_validator 1.0.5 → 1.0.6
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +20 -3
- data/VERSION +1 -1
- data/test/test_utf8_validator.rb +20 -19
- data/utf8_validator.gemspec +2 -2
- metadata +4 -4
data/README.rdoc
CHANGED
@@ -27,9 +27,26 @@ Other interesting and/or useful information can be found:
|
|
27
27
|
|
28
28
|
== A Word On Ruby Versions
|
29
29
|
|
30
|
-
It is expected that this validator will be used in Ruby environments prior to 1.9.x. However, nothing prohibits use with Ruby 1.9. Tests recognize
|
30
|
+
It is expected that this validator will be used in Ruby environments prior to 1.9.x. However, nothing prohibits use with Ruby 1.9 or 2.0. Tests recognize these environments and adjust behavior accordingly.
|
31
31
|
|
32
|
-
Testing
|
32
|
+
Testing for 1.8.x done using:
|
33
|
+
|
34
|
+
* 1.8.5_231
|
35
|
+
* 1.8.6_383
|
36
|
+
* 1.8.7_299
|
37
|
+
|
38
|
+
Testing for 1.9.x done using a variety of versions, including:
|
39
|
+
|
40
|
+
* 1.9.1p378
|
41
|
+
* 1.9.1p431
|
42
|
+
* 1.9.2p188
|
43
|
+
* 1.9.3p358
|
44
|
+
|
45
|
+
and others.
|
46
|
+
|
47
|
+
Testing for 2.0.x done using:
|
48
|
+
|
49
|
+
* 2.0.0p0
|
33
50
|
|
34
51
|
== Reporting Issues
|
35
52
|
|
@@ -56,6 +73,6 @@ Human readable documentation can be found at:
|
|
56
73
|
|
57
74
|
== Copyright
|
58
75
|
|
59
|
-
Copyright (c) 2011 Guy Allard. See LICENSE.txt for
|
76
|
+
Copyright (c) 2011-2013 Guy Allard. See LICENSE.txt for
|
60
77
|
further details.
|
61
78
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.0.
|
1
|
+
1.0.6
|
data/test/test_utf8_validator.rb
CHANGED
@@ -20,6 +20,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
20
20
|
#
|
21
21
|
def setup
|
22
22
|
@validator = UTF8::Validator.new
|
23
|
+
@vercheck = ((RUBY_VERSION =~ /1\.9/) or (RUBY_VERSION =~ /2\.0/)) ? true : false
|
23
24
|
end
|
24
25
|
|
25
26
|
#
|
@@ -45,7 +46,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
45
46
|
]
|
46
47
|
test_data.each do |string|
|
47
48
|
assert @validator.valid_encoding?(string), "Simple ASCII: #{string}"
|
48
|
-
assert string.force_encoding("UTF-8").valid_encoding?, "Simple ASCII 19: #{string}" if
|
49
|
+
assert string.force_encoding("UTF-8").valid_encoding?, "Simple ASCII 19: #{string}" if @vercheck
|
49
50
|
end
|
50
51
|
end
|
51
52
|
|
@@ -53,7 +54,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
53
54
|
def test_0030_all_ascii
|
54
55
|
0.upto(127) do |i|
|
55
56
|
assert @validator.valid_encoding?(i.chr), "All ASCII: #{i.chr}"
|
56
|
-
assert i.chr.force_encoding("UTF-8").valid_encoding?, "All ASCII 19: #{i.chr}" if
|
57
|
+
assert i.chr.force_encoding("UTF-8").valid_encoding?, "All ASCII 19: #{i.chr}" if @vercheck
|
57
58
|
end
|
58
59
|
end
|
59
60
|
|
@@ -67,7 +68,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
67
68
|
]
|
68
69
|
test_data.each do |string|
|
69
70
|
assert @validator.valid_encoding?(string), "Simple UTF-8, 2bytes: #{string}"
|
70
|
-
assert string.force_encoding("UTF-8").valid_encoding?, "Simple UTF-8 19, 2bytes: #{string}" if
|
71
|
+
assert string.force_encoding("UTF-8").valid_encoding?, "Simple UTF-8 19, 2bytes: #{string}" if @vercheck
|
71
72
|
end
|
72
73
|
end
|
73
74
|
|
@@ -81,7 +82,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
81
82
|
]
|
82
83
|
test_data.each do |string|
|
83
84
|
assert @validator.valid_encoding?(string), "Simple UTF-8, 3bytes: #{string}"
|
84
|
-
assert string.force_encoding("UTF-8").valid_encoding?, "Simple UTF-8 19, 3bytes: #{string}" if
|
85
|
+
assert string.force_encoding("UTF-8").valid_encoding?, "Simple UTF-8 19, 3bytes: #{string}" if @vercheck
|
85
86
|
end
|
86
87
|
end
|
87
88
|
|
@@ -97,7 +98,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
97
98
|
]
|
98
99
|
test_data.each do |string|
|
99
100
|
assert @validator.valid_encoding?(string), "Simple UTF-8, 4bytes: #{string}"
|
100
|
-
assert string.force_encoding("UTF-8").valid_encoding?, "Simple UTF-8 19, 4bytes: #{string}" if
|
101
|
+
assert string.force_encoding("UTF-8").valid_encoding?, "Simple UTF-8 19, 4bytes: #{string}" if @vercheck
|
101
102
|
end
|
102
103
|
end
|
103
104
|
|
@@ -107,11 +108,11 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
107
108
|
"\xed\x9f\xbf", # = "\ud7ff"
|
108
109
|
"\xee\x80\x80", # = "\ue000"
|
109
110
|
"\xef\xbf\xbd", # = "\ufffd"
|
110
|
-
"\xf4\x8f\xbf\xbf", # = "\U10ffff"
|
111
|
+
"\xf4\x8f\xbf\xbf", # = "\U10ffff"
|
111
112
|
]
|
112
113
|
test_data.each do |string|
|
113
114
|
assert @validator.valid_encoding?(string), "boundary conditions: #{string}"
|
114
|
-
assert string.force_encoding("UTF-8").valid_encoding?, "boundary conditions 19: #{string}" if
|
115
|
+
assert string.force_encoding("UTF-8").valid_encoding?, "boundary conditions 19: #{string}" if @vercheck
|
115
116
|
end
|
116
117
|
end
|
117
118
|
|
@@ -124,7 +125,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
124
125
|
]
|
125
126
|
test_data.each do |string|
|
126
127
|
assert @validator.valid_encoding?(string), "interesting valid strings: #{string}"
|
127
|
-
assert string.force_encoding("UTF-8").valid_encoding?, "interesting valid strings 19: #{string}" if
|
128
|
+
assert string.force_encoding("UTF-8").valid_encoding?, "interesting valid strings 19: #{string}" if @vercheck
|
128
129
|
end
|
129
130
|
end
|
130
131
|
|
@@ -137,7 +138,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
137
138
|
def test0510_iso_5559_1
|
138
139
|
0x80.upto(0x9f) do |i|
|
139
140
|
assert !@validator.valid_encoding?(i.chr), "ISO-8859-1: #{i}"
|
140
|
-
assert !i.chr.force_encoding("UTF-8").valid_encoding?, "ISO-8859-1 19: #{i}" if
|
141
|
+
assert !i.chr.force_encoding("UTF-8").valid_encoding?, "ISO-8859-1 19: #{i}" if @vercheck
|
141
142
|
end
|
142
143
|
end
|
143
144
|
|
@@ -154,7 +155,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
154
155
|
]
|
155
156
|
test_data.each do |string|
|
156
157
|
assert !@validator.valid_encoding?(string), "UTF-16 Surrogate Halves: #{string}"
|
157
|
-
assert !string.force_encoding("UTF-8").valid_encoding?, "UTF-16 Surrogate Halves 19: #{string}" if
|
158
|
+
assert !string.force_encoding("UTF-8").valid_encoding?, "UTF-16 Surrogate Halves 19: #{string}" if @vercheck
|
158
159
|
end
|
159
160
|
end
|
160
161
|
|
@@ -176,7 +177,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
176
177
|
]
|
177
178
|
test_data.each do |string|
|
178
179
|
assert !@validator.valid_encoding?(string), "Invalid single bytes: #{string}"
|
179
|
-
assert !string.force_encoding("UTF-8").valid_encoding?, "Invalid single bytes 10: #{string}" if
|
180
|
+
assert !string.force_encoding("UTF-8").valid_encoding?, "Invalid single bytes 10: #{string}" if @vercheck
|
180
181
|
end
|
181
182
|
end
|
182
183
|
|
@@ -192,7 +193,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
192
193
|
]
|
193
194
|
test_data.each do |string|
|
194
195
|
assert !@validator.valid_encoding?(string), "Not shortest: #{string}"
|
195
|
-
assert !string.force_encoding("UTF-8").valid_encoding?, "Not shortest 19: #{string}" if
|
196
|
+
assert !string.force_encoding("UTF-8").valid_encoding?, "Not shortest 19: #{string}" if @vercheck
|
196
197
|
end
|
197
198
|
end
|
198
199
|
|
@@ -212,7 +213,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
212
213
|
]
|
213
214
|
test_data.each do |string|
|
214
215
|
assert !@validator.valid_encoding?(string), "truncated last: #{string}"
|
215
|
-
assert !string.force_encoding("UTF-8").valid_encoding?, "truncated last 19: #{string}" if
|
216
|
+
assert !string.force_encoding("UTF-8").valid_encoding?, "truncated last 19: #{string}" if @vercheck
|
216
217
|
end
|
217
218
|
end
|
218
219
|
|
@@ -233,7 +234,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
233
234
|
test_data.each do |string|
|
234
235
|
string = "a" + string + "b"
|
235
236
|
assert !@validator.valid_encoding?(string), "truncated in good: #{string}"
|
236
|
-
assert !string.force_encoding("UTF-8").valid_encoding?, "truncated in good 19: #{string}" if
|
237
|
+
assert !string.force_encoding("UTF-8").valid_encoding?, "truncated in good 19: #{string}" if @vercheck
|
237
238
|
end
|
238
239
|
end
|
239
240
|
|
@@ -268,7 +269,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
268
269
|
]
|
269
270
|
test_data.each do |string|
|
270
271
|
assert !@validator.valid_encoding?(string), "miscellaneous bad: #{string}"
|
271
|
-
assert !string.force_encoding("UTF-8").valid_encoding?, "miscellaneous bad 19: #{string}" if
|
272
|
+
assert !string.force_encoding("UTF-8").valid_encoding?, "miscellaneous bad 19: #{string}" if @vercheck
|
272
273
|
end
|
273
274
|
end
|
274
275
|
|
@@ -284,7 +285,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
284
285
|
]
|
285
286
|
test_data.each do |string|
|
286
287
|
assert !@validator.valid_encoding?(string), "max overlong seq: #{string}"
|
287
|
-
assert !string.force_encoding("UTF-8").valid_encoding?, "max overlong seq 19: #{string}" if
|
288
|
+
assert !string.force_encoding("UTF-8").valid_encoding?, "max overlong seq 19: #{string}" if @vercheck
|
288
289
|
end
|
289
290
|
end
|
290
291
|
|
@@ -295,7 +296,7 @@ class TestUtf8Validator < Test::Unit::TestCase
|
|
295
296
|
]
|
296
297
|
test_data.each do |string|
|
297
298
|
assert !@validator.valid_encoding?(string), "boundary conditions: #{string}"
|
298
|
-
assert !string.force_encoding("UTF-8").valid_encoding?, "boundary conditions 19: #{string}" if
|
299
|
+
assert !string.force_encoding("UTF-8").valid_encoding?, "boundary conditions 19: #{string}" if @vercheck
|
299
300
|
end
|
300
301
|
end
|
301
302
|
|
@@ -351,7 +352,7 @@ straight from the Unicode 6.0 spec. See page 92.
|
|
351
352
|
good_data.each do |string|
|
352
353
|
assert @validator.valid_encoding?(string), "good unicode specs 01: #{string}"
|
353
354
|
assert string.force_encoding("UTF-8").valid_encoding?,
|
354
|
-
"good unicode specs 01 19: #{string}" if
|
355
|
+
"good unicode specs 01 19: #{string}" if @vercheck
|
355
356
|
end
|
356
357
|
|
357
358
|
bad_data = [
|
@@ -360,7 +361,7 @@ straight from the Unicode 6.0 spec. See page 92.
|
|
360
361
|
bad_data.each do |string|
|
361
362
|
assert !@validator.valid_encoding?(string), "bad unicode specs 01: #{string}"
|
362
363
|
assert !string.force_encoding("UTF-8").valid_encoding?,
|
363
|
-
"bad unicode specs 01 19: #{string}" if
|
364
|
+
"bad unicode specs 01 19: #{string}" if @vercheck
|
364
365
|
end
|
365
366
|
|
366
367
|
end
|
data/utf8_validator.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{utf8_validator}
|
8
|
-
s.version = "1.0.
|
8
|
+
s.version = "1.0.6"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Guy Allard"]
|
12
|
-
s.date = %q{2013-
|
12
|
+
s.date = %q{2013-03-03}
|
13
13
|
s.description = %q{A State Machine implementation of a UTF-8 Encoding
|
14
14
|
Validation algorithm.}
|
15
15
|
s.email = %q{allard.guy.m@gmail.com}
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: utf8_validator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 27
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 1.0.
|
9
|
+
- 6
|
10
|
+
version: 1.0.6
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Guy Allard
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2013-
|
18
|
+
date: 2013-03-03 00:00:00 -05:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|