@@ -533,6 +533,25 @@ def to.to_int() -2 end
533
533
a . send ( @method , eval ( "(-9...)" ) ) . should == nil
534
534
end
535
535
536
+ ruby_version_is "3.0" do
537
+ it "can be sliced with Enumerator::ArithmeticSequence" do
538
+ a = [ 0 , 1 , 2 , 3 , 4 , 5 ]
539
+ a . send ( @method , eval ( "(0..).step(2)" ) ) . should == [ 0 , 2 , 4 ]
540
+ a . send ( @method , eval ( "(0..).step(3)" ) ) . should == [ 0 , 3 ]
541
+ a . send ( @method , eval ( "(0..).step(10)" ) ) . should == [ 0 ]
542
+ a . send ( @method , eval ( "(0..1).step(2)" ) ) . should == [ 0 ]
543
+ a . send ( @method , eval ( "(..0).step(1)" ) ) . should == [ 0 ]
544
+ a . send ( @method , eval ( "(...0).step(1)" ) ) . should == [ ]
545
+ a . send ( @method , eval ( "(2..).step(2)" ) ) . should == [ 2 , 4 ]
546
+ a . send ( @method , eval ( "(2..-2).step(2)" ) ) . should == [ 2 , 4 ]
547
+ a . send ( @method , eval ( "(2...-2).step(2)" ) ) . should == [ 2 ]
548
+ a . send ( @method , eval ( "(2..).step(-2)" ) ) . should == [ 2 , 0 ]
549
+ a . send ( @method , eval ( "(2..).step(-3)" ) ) . should == [ 2 ]
550
+ a . send ( @method , eval ( "(..-2).step(2)" ) ) . should == [ 0 , 2 , 4 ]
551
+ a . send ( @method , eval ( "(...-2).step(2)" ) ) . should == [ 0 , 2 ]
552
+ end
553
+ end
554
+
536
555
ruby_version_is "2.7" do
537
556
it "can accept beginless ranges" do
538
557
a = [ 0 , 1 , 2 , 3 , 4 , 5 ]
0 commit comments