forked from Raku/roast
/
version.t
54 lines (46 loc) · 845 Bytes
/
version.t
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
use v6;
use Test;
plan 35;
my sub vtest($cmp, *@v) {
my $x = shift @v;
while (@v) {
my $y = shift @v;
is Version.new($x) cmp Version.new($y), $cmp, "$x cmp $y is $cmp";
$x = $y;
}
}
# From S03
vtest Order::Same,
< 1.2.1alpha1.0
1.2.1alpha1
1.2.1.alpha1
1.2.1alpha.1
1.2.1.alpha.1
1.2-1+alpha/1 >;
# More from S03
vtest Order::Same,
< 1.2.1_01
1.2.1_1
1.2.1._1
1.2.1_1
1.2.1._.1
001.0002.0000000001._.00000000001
1.2.1._.1.0.0.0.0.0 >;
# Still more from S03
my @sorted = <
1.2.0.999
1.2.1_01
1.2.1_2
1.2.1_003
1.2.1a1
1.2.1.alpha1
1.2.1b1
1.2.1.beta1
1.2.1.gamma
1.2.1α1
1.2.1β1
1.2.1γ
1.2.1 >;
vtest Order::Increase, @sorted;
vtest Order::Decrease, @sorted.reverse;
done;