range_extd 0.3.0 → 0.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.
@@ -7,8 +7,6 @@ arlibrelpath = []
7
7
  arlibbase = %w(range_extd range_extd/infinity) # range_extd/infinity is actually loaded from range_extd. But by writing here, the absolute path will be displayed.
8
8
 
9
9
  arlibbase.each do |elibbase|
10
- elibbase
11
-
12
10
  arAllPaths = []
13
11
  er=nil
14
12
  pathnow = nil
@@ -52,7 +50,8 @@ end
52
50
  #################################################
53
51
 
54
52
  #if $0 == __FILE__
55
- require 'minitest/unit'
53
+ gem "minitest"
54
+ # require 'minitest/unit'
56
55
  require 'minitest/autorun'
57
56
  # MiniTest::Unit.autorun
58
57
 
@@ -139,10 +138,10 @@ end
139
138
  def RaE(*rest)
140
139
  RangeExtd(*rest)
141
140
  end
142
- T = true
143
- F = false
144
141
 
145
142
  class TestUnitFoo < MiniTest::Unit::TestCase
143
+ T = true
144
+ F = false
146
145
  def setup
147
146
  @ib = 1
148
147
  @ie = 6
@@ -168,46 +167,49 @@ end
168
167
  end # def test_object_compare
169
168
 
170
169
  def test_overwrite_compare
171
- assert_equal nil, (Float::INFINITY <=> RangeExtd::Infinity::POSITIVE)
172
- assert_equal nil, RangeExtd::Infinity.overwrite_compare(Numeric)
173
- assert_equal nil, (Float::INFINITY <=> RangeExtd::Infinity::POSITIVE) # no change
174
- assert_equal nil, RangeExtd::Infinity.overwrite_compare(3)
175
- assert_equal nil, (Float::INFINITY <=> RangeExtd::Infinity::POSITIVE) # no change
170
+ assert_nil (Float::INFINITY <=> RangeExtd::Infinity::POSITIVE)
171
+ assert_nil RangeExtd::Infinity.overwrite_compare(Numeric)
172
+ assert_nil (Float::INFINITY <=> RangeExtd::Infinity::POSITIVE) # no change
173
+ assert_nil RangeExtd::Infinity.overwrite_compare(3)
174
+ assert_nil (Float::INFINITY <=> RangeExtd::Infinity::POSITIVE) # no change
176
175
  assert_equal false, RangeExtd::Infinity.overwrite_compare(true) # no change
177
176
  assert_equal 1, (RangeExtd::Infinity::POSITIVE <=> 's')
178
177
  assert_equal(-1, ('s' <=> RangeExtd::Infinity::POSITIVE))
179
178
  assert_equal(-1, (RangeExtd::Infinity::NEGATIVE <=> 's'))
180
179
  assert_equal 1, ('s' <=> RangeExtd::Infinity::NEGATIVE)
181
- assert_equal nil, RangeExtd::Infinity.overwrite_compare('s') # no change
180
+ assert_nil RangeExtd::Infinity.overwrite_compare('s') # no change
182
181
  assert_equal 1, (RangeExtd::Infinity::POSITIVE <=> 's')
183
182
  assert_equal(-1, ('s' <=> RangeExtd::Infinity::POSITIVE))
184
183
  assert_equal(-1, (RangeExtd::Infinity::NEGATIVE <=> 's'))
185
184
  assert_equal 1, ('s' <=> RangeExtd::Infinity::NEGATIVE)
186
- assert_equal nil, (RangeExtd::Infinity::POSITIVE <=> [3,5])
187
- assert_equal nil, ([3,5] <=> RangeExtd::Infinity::POSITIVE) # no change
188
- assert_equal nil, (defined? [3,5].compare_before_infinity)
185
+ assert_nil RangeExtd::Infinity::POSITIVE <=> [3,5]
186
+ assert_nil ([3,5] <=> RangeExtd::Infinity::POSITIVE) # no change
187
+ assert_nil (defined? [3,5].compare_before_infinity)
189
188
  assert_equal false, RangeExtd::Infinity.overwrite_compare([3,5])
190
- assert_equal false, RangeExtd::Infinity.overwrite_compare(Hash) # no change
189
+
190
+ # This used to give false; Hash#<= used to be undefined in old-version Ruby.
191
+ # But as of Ruby-2.6, it is defined!
192
+ assert_equal Hash.method_defined?(:<=), RangeExtd::Infinity.overwrite_compare(Hash) # no change
193
+
191
194
  c = CLComparable.new
192
195
  assert_equal 'XXX', (c <=> 7) # Defined in this code
193
- assert_equal nil, (c <=> 1) # Object#<=>
194
- assert_equal nil, (c <=> RangeExtd::Infinity::POSITIVE)
196
+ assert_nil (c <=> 1) # Object#<=>
197
+ assert_nil (c <=> RangeExtd::Infinity::POSITIVE)
195
198
  assert_raises(ArgumentError){ (c..RangeExtd::Infinity::POSITIVE) } # => bad value for range
196
199
  assert_equal true, RangeExtd::Infinity.overwrite_compare(c)
197
200
  assert_equal(-1, (c <=> RangeExtd::Infinity::POSITIVE))
198
- return
199
201
  assert_equal 1, (c <=> RangeExtd::Infinity::NEGATIVE)
200
202
  assert_equal 'method', (defined? c.compare_before_infinity) # Backup of the original
201
203
  assert_equal 'XXX', (c.compare_before_infinity(7)) # Preserved.
202
204
  assert_equal 'XXX', (c <=> 7) # Preserved.
203
- assert_equal nil, (c <=> 1)
204
- assert_equal nil, (c <=> nil)
205
+ assert_nil (c <=> 1)
206
+ assert_nil (c <=> nil)
205
207
  assert_equal :<=>, (c <=> 8)
206
208
  end
207
209
 
208
210
  def test_rangeextd_new_infinity_c2
209
211
  c2 = CLC2.new
210
- assert_equal nil, (c2 <=> 1) # Object#<=>
212
+ assert_nil (c2 <=> 1) # Object#<=>
211
213
  assert_equal(-1, (c2 <=> RangeExtd::Infinity::POSITIVE))
212
214
  assert_equal 1, (c2 <=> RangeExtd::Infinity::NEGATIVE)
213
215
  r=(c2..RangeExtd::Infinity::POSITIVE)
@@ -220,7 +222,7 @@ return
220
222
 
221
223
  def test_range_c3c4
222
224
  c3 = CLC3.new
223
- assert_equal nil, (c3 <=> 1) # Object#<=>
225
+ assert_nil (c3 <=> 1) # Object#<=>
224
226
  assert_equal 'XXX', (c3 <=> 7) # Preserved.
225
227
 
226
228
  r8=(c3..8)
@@ -703,13 +705,6 @@ return
703
705
  end # def test_each
704
706
 
705
707
 
706
- def test_end
707
- assert_equal(@ie, @s11.end)
708
- assert_equal(@ie, @s12.end)
709
- assert_equal(@ie, @s21.end)
710
- assert_equal(@ie, @s22.end)
711
- end
712
-
713
708
  def test_last # Apparently it uses each() internally.
714
709
  assert_equal(@ie, @s11.last)
715
710
  assert_equal(@ie-1, @s12.last(1)[0])
@@ -751,16 +746,16 @@ return
751
746
  # http://www.ruby-doc.org/core-2.1.1/Range.html#method-i-bsearch
752
747
 
753
748
  assert_equal(3, RangeExtd(1..4).bsearch{ |i| ary[i] >= 9}) # (1..4).bsearch{|i| ary[i] >= 9} => 3
754
- assert_equal(nil, RangeExtd(3...4).bsearch{ |i| ary[i] >= 11})
755
- assert_equal(nil, RangeExtd(3.6...4).bsearch{|i| ary[i] >= 11})
749
+ assert_nil RangeExtd(3...4).bsearch{ |i| ary[i] >= 11}
750
+ assert_nil RangeExtd(3.6...4).bsearch{|i| ary[i] >= 11}
756
751
  assert_equal(4, RangeExtd(3...5).bsearch{ |i| ary[i] >= 11})
757
752
  assert_equal(4.0, RangeExtd(3...5.1).bsearch{|i| ary[i] >= 11})
758
- assert_equal(nil, RangeExtd(3.6...4).bsearch{|i| ary[i] >= 11})
753
+ assert_nil RangeExtd(3.6...4).bsearch{|i| ary[i] >= 11}
759
754
 
760
755
  assert_equal(4, RangeExtd(3...5, 1).bsearch{ |i| ary[i] >= 11})
761
- assert_equal(nil, RangeExtd(4...5, 1).bsearch{ |i| ary[i] >= 11})
756
+ assert_nil RangeExtd(4...5, 1).bsearch{ |i| ary[i] >= 11}
762
757
  assert_equal(4.0, RangeExtd(3...5.1, 1).bsearch{|i| ary[i] >= 11})
763
- assert_equal(nil, RangeExtd(3.6...4, 1).bsearch{|i| ary[i] >= 11})
758
+ assert_nil RangeExtd(3.6...4, 1).bsearch{|i| ary[i] >= 11}
764
759
 
765
760
  assert_raises TypeError do
766
761
  RangeExtd.new((?a..?b), :exclude_begin => true).bsearch{|i| ary[i] >= 11}
@@ -771,8 +766,8 @@ return
771
766
  sp = Special.new
772
767
 
773
768
  # Standard Range
774
- assert_equal(nil, RangeExtd(3..4).bsearch{ |i| sp[i]})
775
- assert_equal(nil, RangeExtd(3...4).bsearch{|i| sp[i]})
769
+ assert_nil RangeExtd(3..4).bsearch{ |i| sp[i]}
770
+ assert_nil RangeExtd(3...4).bsearch{|i| sp[i]}
776
771
  assert(1e-8 > (RangeExtd(3.0...4).bsearch{|i| sp[i]} - 3.5).abs)
777
772
  assert(1e-8 > (RangeExtd(3...4.0).bsearch{|i| sp[i]} - 3.5).abs)
778
773
  assert(1e-8 > (RangeExtd(3.3..4).bsearch{ |i| sp[i]} - 3.5).abs)
@@ -895,7 +890,7 @@ return
895
890
  assert_equal(@ie-@ib, @s12.size)
896
891
  assert_equal(@ie-@ib, @s21.size)
897
892
  assert_equal(@ie-@ib-1, @s22.size)
898
- assert_equal nil, RangeExtd("a", "c").size
893
+ assert_nil RangeExtd("a", "c").size
899
894
  assert_equal 0, RangeExtd::NONE.size
900
895
  assert_equal Float::INFINITY, RangeExtd::ALL.size
901
896
 
@@ -948,7 +943,7 @@ return
948
943
  # String
949
944
  rsi = (?a..?d)
950
945
  if rsi.size.nil?
951
- assert_equal nil, RangeExtd(rsi, excl_ini).size # Ruby 2.1
946
+ assert_nil RangeExtd(rsi, excl_ini).size # Ruby 2.1
952
947
  else
953
948
  assert_equal 3, RangeExtd(rsi, excl_ini).size # If the specification ever changes?
954
949
  end
@@ -990,10 +985,10 @@ return
990
985
  assert (RangeExtd::Infinity::NEGATIVE.negative?)
991
986
  assert !(RangeExtd::Infinity::POSITIVE.negative?)
992
987
  assert_equal(-1, (RangeExtd::Infinity::NEGATIVE <=> -3))
993
- assert_equal(nil,(RangeExtd::Infinity::NEGATIVE <=> Object.new))
988
+ assert_nil (RangeExtd::Infinity::NEGATIVE <=> Object.new)
994
989
  assert_equal 0, (RangeExtd::Infinity::NEGATIVE <=> RangeExtd::Infinity::NEGATIVE)
995
990
  assert_equal 1, (RangeExtd::Infinity::POSITIVE <=> -3)
996
- assert_equal nil,(RangeExtd::Infinity::POSITIVE <=> Object.new)
991
+ assert_nil (RangeExtd::Infinity::POSITIVE <=> Object.new)
997
992
  assert_equal 0, (RangeExtd::Infinity::POSITIVE <=> RangeExtd::Infinity::POSITIVE)
998
993
  assert_equal 1, (RangeExtd::Infinity::POSITIVE <=> RangeExtd::Infinity::NEGATIVE)
999
994
  assert_equal(-1, (RangeExtd::Infinity::NEGATIVE <=> RangeExtd::Infinity::POSITIVE))
@@ -1122,6 +1117,85 @@ return
1122
1117
  end # def test_Range_nullfunc
1123
1118
 
1124
1119
 
1120
+ def test_Range_equiv
1121
+ r1 = (2..5)
1122
+ r2 = (2...7)
1123
+ assert !r1.equiv?("Q")
1124
+ assert !r1.equiv?(2.0..3.1)
1125
+ assert r1.equiv?(2.0..5.0)
1126
+ assert (2.0..5.0).equiv?(r1)
1127
+ assert (2.0..5.0).equiv?(2.0..5.0)
1128
+ assert !r1.equiv?(RangeExtd(2..5,true))
1129
+ assert !r1.equiv?(1..5)
1130
+ assert r1.equiv?(2..5)
1131
+ assert r2.equiv?(2...7)
1132
+ assert r1.equiv?(RangeExtd(1..5,true))
1133
+ assert !r1.equiv?(2...5)
1134
+ assert !r2.equiv?(2..7)
1135
+ assert !r1.equiv?(2..6)
1136
+ assert !r2.equiv?(2...8)
1137
+ assert r1.equiv?(2...6)
1138
+ assert r1.equiv?(RangeExtd(1...6,true))
1139
+ assert r2.equiv?(2..6)
1140
+ assert r2.equiv?(RangeExtd(1..6,true))
1141
+ assert !r1.equiv?(2...9)
1142
+ assert !r2.equiv?(2..9)
1143
+ assert !r1.equiv?(RangeExtd(1...9,true))
1144
+ assert !r2.equiv?(RangeExtd(1..9,true))
1145
+ assert (3...7.0).equiv?(3..6) # Because begin.succ is defined.
1146
+ assert !(3...7.0).equiv?(3.0..6) # Because begin.succ is not defined.
1147
+ end # def test_Range_equiv
1148
+
1149
+
1150
+ def test_RangeExtd_equiv
1151
+ r1 = RangeExtd(2..5)
1152
+ r2 = RangeExtd(2...7)
1153
+ r3 = RangeExtd(2..5,true)
1154
+ r4 = RangeExtd(2...7,true)
1155
+ assert !r1.equiv?("Q")
1156
+ assert !r1.equiv?(2.0..3.1)
1157
+ assert r1.equiv?(2.0..5.0)
1158
+ assert (2.0..5.0).equiv?(r1)
1159
+ assert (2.0..5.0).equiv?(2.0..5.0)
1160
+ assert r2.equiv?(2.0...7.0)
1161
+ assert r4.equiv?(RangeExtd(2.0...7.0,true))
1162
+ assert !r1.equiv?(RangeExtd(2..5,true))
1163
+ assert !r2.equiv?(r4)
1164
+ assert !r3.equiv?(2..5)
1165
+ assert !r4.equiv?(2...7)
1166
+ assert !r1.equiv?(1..5)
1167
+ assert !r3.equiv?(RangeExtd(1..5,true))
1168
+ assert !r1.equiv?(RangeExtd(4..5,true))
1169
+ assert !r3.equiv?(4..5)
1170
+ assert r1.equiv?(2..5)
1171
+ assert r2.equiv?(2...7)
1172
+ assert r1.equiv?(RangeExtd(1..5,true))
1173
+ assert r2.equiv?(RangeExtd(1...7,true))
1174
+ assert r3.equiv?(3..5)
1175
+ assert r4.equiv?(3...7)
1176
+ assert !r1.equiv?(RangeExtd(1...5,true))
1177
+ assert !r2.equiv?(RangeExtd(1..7,true))
1178
+ assert !r3.equiv?(3...5)
1179
+ assert !r4.equiv?(3..7)
1180
+ assert !r1.equiv?(2..9)
1181
+ assert !r1.equiv?(RangeExtd(1..9,true))
1182
+ assert !r2.equiv?(RangeExtd(1...9,true))
1183
+ assert !r3.equiv?(3..9)
1184
+ assert !r4.equiv?(3...9)
1185
+ assert r1.equiv?(2...6)
1186
+ assert r1.equiv?(RangeExtd(1...6,true))
1187
+ assert r2.equiv?(RangeExtd(1..6,true))
1188
+ assert r3.equiv?(3...6)
1189
+ assert r4.equiv?(3..6)
1190
+ assert !r4.equiv?(3.0..6.0)
1191
+ assert !r1.equiv?(2...9)
1192
+ assert !r1.equiv?(RangeExtd(1...9,true))
1193
+ assert !r2.equiv?(RangeExtd(1..9,true))
1194
+ assert !r3.equiv?(3...9)
1195
+ assert !r4.equiv?(3..9)
1196
+ end # def test_RangeExtd_equiv
1197
+
1198
+
1125
1199
  def test_RangeExtd_none
1126
1200
  assert RangeExtd::NONE.is_none?
1127
1201
  assert RangeExtd::NONE.valid?
@@ -1137,8 +1211,8 @@ return
1137
1211
  assert !RaE(?a, ?b, true, true).is_none?
1138
1212
  assert RaE(?a, ?b, true, true).empty?
1139
1213
  assert RaE(?a, ?b, true, true).null?
1140
- assert_equal nil, RangeExtd::NONE.begin
1141
- assert_equal nil, RangeExtd::NONE.end
1214
+ assert_nil RangeExtd::NONE.begin
1215
+ assert_nil RangeExtd::NONE.end
1142
1216
  end
1143
1217
 
1144
1218
 
@@ -1180,7 +1254,11 @@ return
1180
1254
  assert !r.cover?(5)
1181
1255
  assert !(r === 5)
1182
1256
  assert_equal Float::INFINITY, r.end # It is exactly Float.
1183
- assert (! defined? r.end.positive?)
1257
+
1258
+ # It seems in the old versions of Ruby, Float::INFINITY.positive? was not defined,
1259
+ # as this used to give false. As of Ruby 2.6, it is true (and it should be).
1260
+ assert (defined? Float::INFINITY.positive?), (defined? r.end.positive?)
1261
+
1184
1262
  n = 0
1185
1263
  r.each{|ei| n+=ei;break if n > 20} # [6, 7, 8, ...]
1186
1264
  assert_equal 21, n
@@ -1189,10 +1267,10 @@ return
1189
1267
  assert_equal 24, n
1190
1268
 
1191
1269
  assert_raises TypeError do
1192
- dummy = r.first(?a)
1270
+ r.first(?a)
1193
1271
  end
1194
1272
  assert_raises TypeError do
1195
- dummy = r.last(3)
1273
+ r.last(3)
1196
1274
  end
1197
1275
  end
1198
1276
 
@@ -1231,13 +1309,13 @@ return
1231
1309
  assert_equal 'z', rs.last
1232
1310
  assert !rs.cover?(?z)
1233
1311
  assert rs.cover?(?x)
1234
- assert_equal nil, (rs === ?x)
1312
+ assert_nil (rs === ?x)
1235
1313
  assert_equal RangeExtd::Infinity::NEGATIVE, rs.begin # It is Infinity,
1236
1314
  assert_equal(-Float::INFINITY, rs.begin) # but still equal to Float.
1237
1315
  assert ! rs.begin.positive?
1238
1316
  assert_equal Float::INFINITY, rs.size
1239
1317
  assert_raises TypeError do
1240
- dummy = rs.last(3)
1318
+ rs.last(3)
1241
1319
  end
1242
1320
  end
1243
1321
 
@@ -1270,18 +1348,26 @@ return
1270
1348
  assert !((?a..?z) === "cc")
1271
1349
  assert !((?B..?z) === 'dd')
1272
1350
 
1351
+ # RangeExtd#equiv?
1352
+ assert RangeExtd(2...7,true).equiv?(3..6) # => true
1353
+ assert !RangeExtd(2...7,true).equiv?(3..6.0) # => false
1354
+ assert !RangeExtd(2...7,true).equiv?(3.0..6.0) # => false
1355
+ assert !RangeExtd(2...7,true).equiv?(3..6.5) # => false
1356
+ assert RangeExtd(2...7,true).equiv?(RangeExtd(2.0...7.0,true)) # => true
1357
+ assert RangeExtd(2...7,true).equiv?(3...7.0) # => true
1358
+
1273
1359
  # RangeExtd#eql?bsearch
1274
1360
  ary = [0, 4, 7, 10, 12]
1275
- assert_equal nil, (3...4).bsearch{ |i| ary[i] >= 11}
1361
+ assert_nil (3...4).bsearch{ |i| ary[i] >= 11}
1276
1362
  assert_equal 4, (3...5).bsearch{ |i| ary[i] >= 11}
1277
1363
  assert_equal 4.0, (3..5.1).bsearch{ |i| ary[i] >= 11}
1278
1364
  assert_equal 4.0, (3.6..4).bsearch{ |i| ary[i] >= 11}
1279
- assert_equal nil, (3.6...4).bsearch{ |i| ary[i] >= 11}
1365
+ assert_nil (3.6...4).bsearch{ |i| ary[i] >= 11}
1280
1366
  assert_equal 4.0, (3.6...4.1).bsearch{|i| ary[i] >= 11}
1281
1367
 
1282
1368
  sp = Special.new
1283
- assert_equal nil, (3..4).bsearch{ |i| sp[i]}
1284
- assert_equal nil, (3...4).bsearch{ |i| sp[i]}
1369
+ assert_nil (3..4).bsearch{ |i| sp[i]}
1370
+ assert_nil (3...4).bsearch{ |i| sp[i]}
1285
1371
  assert_equal 0,(((3.0...4).bsearch{|i| sp[i]}-3.5)*1e10.abs).to_i # => 3.5000000000000004
1286
1372
  assert_equal 0,(((3...4.0).bsearch{|i| sp[i]}-3.5)*1e10.abs).to_i # => 3.5000000000000004
1287
1373
  assert_equal 0,(((3.3..4).bsearch{ |i| sp[i]}-3.5)*1e10.abs).to_i # => 3.5000000000000004
@@ -1319,6 +1405,7 @@ return
1319
1405
  # 4.4 - 2.4 # => 2.0000000000000004
1320
1406
  # 4.8 - 2.8 # => 2.0
1321
1407
  assert(! RangeExtd(1..5, true, true).eql?(RangeExtd(Rational(1,1), 5, true, true))) # => false
1408
+
1322
1409
  assert_equal [2, 3, 4], RangeExtd(1..5, true, true).to_a # => [2, 3, 4]
1323
1410
  assert_equal 3, RangeExtd(1..5, true, true).to_a.size # => 3
1324
1411
  assert_raises(TypeError){ RangeExtd(Rational(1,1)..5).to_a } # => TypeError
@@ -1335,7 +1422,12 @@ return
1335
1422
  assert_equal 4, (1.5...4.9).size # => 4 # Why not 3??
1336
1423
  assert_equal 3, (1.5...4.5).size # => 3
1337
1424
  assert_equal Float::INFINITY, (0...Float::INFINITY).size # => Infinity
1338
- assert_equal 0, (Float::INFINITY..Float::INFINITY).size
1425
+ begin
1426
+ i = (Float::INFINITY..Float::INFINITY).size
1427
+ assert_equal 0, i # In the older versions of Ruby
1428
+ rescue # FloatDomainError: NaN (though it was not defined in old-version Ruby!)
1429
+ assert_raises(FloatDomainError){ RangeExtd(Float::INFINITY..Float::INFINITY).size }
1430
+ end
1339
1431
 
1340
1432
  # RangeExtd#step # => the same as each
1341
1433
 
@@ -1384,12 +1476,12 @@ return
1384
1476
  assert_equal "2...6", RangeExtd(2...6).to_s
1385
1477
  assert_equal "2<..6", RangeExtd(2,6,1).to_s
1386
1478
 
1387
- # Range.==
1479
+ # Range#==
1388
1480
  assert !(1...1).valid?
1389
1481
  assert !(nil...nil).valid?
1390
1482
  assert !((1...1) == RangeExtd(1, 1, true, true)) # => false.
1391
1483
 
1392
- # Range.valid?
1484
+ # Range#valid?
1393
1485
  assert !(nil..nil).valid? # => false
1394
1486
  assert (0..0).valid? # => true
1395
1487
  assert !(0...0).valid? # => false
@@ -1399,9 +1491,9 @@ return
1399
1491
  assert RangeExtd::NONE.valid? # => true
1400
1492
  assert RangeExtd::ALL.valid? # => true
1401
1493
 
1402
- # Range.empty?
1403
- assert_equal nil, (nil..nil).empty? # => nil
1404
- assert_equal nil, (1...1).empty? # => nil
1494
+ # Range#empty?
1495
+ assert_nil (nil..nil).empty? # => nil
1496
+ assert_nil (1...1).empty? # => nil
1405
1497
  assert !(1..1).empty? # => false
1406
1498
  assert RangeExtd(1...1, true).empty? # => true
1407
1499
  assert RangeExtd(1...2, true).empty? # => true
@@ -1409,10 +1501,19 @@ return
1409
1501
  assert RangeExtd(?a...?b, true).empty? # => true
1410
1502
  assert RangeExtd::NONE.empty? # => true
1411
1503
 
1504
+ # Range#equiv?
1505
+ assert (3...7).equiv?(3..6) # => true
1506
+ assert !(3...7).equiv?(3..6.0) # => false
1507
+ assert !(3...7).equiv?(3.0..6.0) # => false
1508
+ assert !(3...7).equiv?(3.0..6.5) # => false
1509
+ assert (3...7).equiv?(3.0...7.0) # => false
1510
+ assert (3...7.0).equiv?(3..6) # => true
1511
+ assert !(3...7.0).equiv?(3.0..6) # => false
1512
+
1412
1513
  # class Infinity
1413
- assert_equal -1, (?z <=> RangeExtd::Infinity::POSITIVE)
1514
+ assert_equal( -1, (?z <=> RangeExtd::Infinity::POSITIVE))
1414
1515
  assert_equal 1, (RangeExtd::Infinity::POSITIVE <=> ?z)
1415
- assert_equal nil, (50 <=> RangeExtd::Infinity::POSITIVE)
1516
+ assert_nil (50 <=> RangeExtd::Infinity::POSITIVE)
1416
1517
  assert_equal 1, (RangeExtd::Infinity::POSITIVE <=> 50)
1417
1518
  end # def test_in_document
1418
1519
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: range_extd
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: '0.4'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masa Sakano
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-02 00:00:00.000000000 Z
11
+ date: 2019-10-30 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Package for a subclass of Range, RangeExtd and RangeExtd::Infinity. The
14
14
  former defines a range that enables an exclusion of the begin boundary, in addition
@@ -23,40 +23,40 @@ extra_rdoc_files:
23
23
  - README.en.rdoc
24
24
  - README.ja.rdoc
25
25
  files:
26
- - News
26
+ - ".gitignore"
27
27
  - ChangeLog
28
+ - Makefile
29
+ - News
28
30
  - README.en.rdoc
29
31
  - README.ja.rdoc
30
32
  - Rakefile
31
- - range_extd.gemspec
32
- - lib/range_extd/range_extd.rb
33
33
  - lib/range_extd/infinity/infinity.rb
34
+ - lib/range_extd/range_extd.rb
34
35
  - test/test_range_extd.rb
35
- homepage:
36
+ homepage: https://www.wisebabel.com
36
37
  licenses:
37
38
  - MIT
38
- metadata: {}
39
+ metadata:
40
+ yard.run: yri
39
41
  post_install_message:
40
42
  rdoc_options:
41
- - --charset=UTF-8
43
+ - "--charset=UTF-8"
42
44
  require_paths:
43
45
  - lib
44
46
  required_ruby_version: !ruby/object:Gem::Requirement
45
47
  requirements:
46
- - - '>='
48
+ - - ">="
47
49
  - !ruby/object:Gem::Version
48
50
  version: '2.0'
49
51
  required_rubygems_version: !ruby/object:Gem::Requirement
50
52
  requirements:
51
- - - '>='
53
+ - - ">="
52
54
  - !ruby/object:Gem::Version
53
55
  version: '0'
54
56
  requirements: []
55
- rubyforge_project:
56
- rubygems_version: 2.0.3
57
+ rubygems_version: 3.0.3
57
58
  signing_key:
58
59
  specification_version: 4
59
60
  summary: RangeExtd - Extended Range class with exclude_begin and open-ends
60
61
  test_files:
61
62
  - test/test_range_extd.rb
62
- has_rdoc: