1 USING: math.order semantic-versioning tools.test ;
2 IN: semantic-versioning.tests
6 T{ version f 0 1 0 "" "" }
7 T{ version f 0 97 0 "" "" }
8 T{ version f 1 1 0 "" "" }
9 T{ version f 1 2 3 "" "" }
10 T{ version f 1 0 0 "dev1" "" }
11 T{ version f 1 0 0 "rc1" "build" }
12 T{ version f 1 0 0 "rc2" "" }
13 T{ version f 1 0 0 "rc2" "123456" }
25 } [ string>version ] map
28 { +gt+ } [ "1.2.0dev1" "0.12.1dev2" version<=> ] unit-test
29 { +lt+ } [ "1.9.0" "1.10.0" version<=> ] unit-test
30 { +eq+ } [ "2.0.0rc1" "2.0.0rc1" version<=> ] unit-test
31 { +lt+ } [ "1.0.0rc1" "1.0.0" version<=> ] unit-test
32 { +lt+ } [ "1.0.0rc1" "1.0.0rc2" version<=> ] unit-test
33 { +lt+ } [ "1.0.0-rc.1" "1.0.0-rc.11" version<=> ] unit-test
34 { +lt+ } [ "1.0.0-rc.2" "1.0.0-rc.11" version<=> ] unit-test
35 { +eq+ } [ "1.0.0+foo" "1.0.0+bar" version<=> ] unit-test
47 } dup clone randomize [ version<=> ] sort =