use v6-alpha; use Test; plan 12; use Span::Num; pass "(dummy instead of broken use_ok)"; my $span = Span::Num.new( start => 1, end => 3, start_is_open => Bool::False, end_is_open => Bool::False ); isa_ok( $span, 'Span::Num', 'created a Span::Num' ); is( $span.start, 1, "start" ); is( $span.end , 3, "end" ); # XXX - doesn't work # $span.start = 5; # is( $span.start, 1, "start is read-only" ); is( $span.start_is_open, Bool::False, "start_is_open" ); is( $span.end_is_open, Bool::False, "end_is_open" ); is( $span.start_is_closed, Bool::True, "start_is_closed" ); is( $span.end_is_closed, Bool::True, "end_is_closed" ); is( $span.size, 2, "real size" ); # is( $span.size( density => 1 ), 3, "integer size" ); my $span2 = Span::Num.new( start => 2, end => 4, start_is_open => Bool::False, end_is_open => Bool::False ); my $span3 = Span::Num.new( start => 4, end => 6, start_is_open => Bool::False, end_is_open => Bool::False ); is( $span.intersects( $span2 ), Bool::True, 'intersects' ); is( $span.intersects( $span3 ), Bool::False, 'doesn\'t intersect' ); { my @a = $span.complement; # XXX inconsistent stringification of -Inf is( @a[0].stringify ~ ' ' ~ @a[1].stringify, '(-Inf,1) (3,Inf)', 'complement' ); } # XXX - These two tests attempt to stringify a List of Span, # but there is no such thing defined. #is( $span.intersection( $span2 ).stringify, '[2,3]', 'intersection' ); #is( $span.union( $span2 ).stringify, '[1,4]', 'union' );