| Ian Wienand | 2ba36cd | 2015-11-12 13:52:36 +1100 | [diff] [blame] | 1 | #!/usr/bin/env bash | 
|  | 2 |  | 
|  | 3 | # Tests for DevStack vercmp functionality | 
|  | 4 |  | 
|  | 5 | TOP=$(cd $(dirname "$0")/.. && pwd) | 
|  | 6 |  | 
|  | 7 | # Import common functions | 
|  | 8 | source $TOP/functions | 
|  | 9 | source $TOP/tests/unittest.sh | 
|  | 10 |  | 
|  | 11 | assert_true "numeric gt"  vercmp 2.0 ">" 1.0 | 
|  | 12 | assert_true "numeric gte" vercmp 2.0 ">=" 1.0 | 
|  | 13 | assert_true "numeric gt"  vercmp 1.0.1 ">" 1.0 | 
|  | 14 | assert_true "numeric gte" vercmp 1.0.1 ">=" 1.0 | 
|  | 15 | assert_true "alpha gt"    vercmp 1.0.1b ">" 1.0.1a | 
|  | 16 | assert_true "alpha gte"   vercmp 1.0.1b ">=" 1.0.1a | 
|  | 17 | assert_true "alpha gt"    vercmp b ">" a | 
|  | 18 | assert_true "alpha gte"   vercmp b ">=" a | 
|  | 19 | assert_true "alpha gt"    vercmp 2.0-rc3 ">" 2.0-rc1 | 
|  | 20 | assert_true "alpha gte"   vercmp 2.0-rc3 ">=" 2.0-rc1 | 
|  | 21 |  | 
|  | 22 | assert_false "numeric gt fail"  vercmp 1.0 ">" 1.0 | 
|  | 23 | assert_true  "numeric gte"      vercmp 1.0 ">=" 1.0 | 
|  | 24 | assert_false "numeric gt fail"  vercmp 0.9 ">" 1.0 | 
|  | 25 | assert_false "numeric gte fail" vercmp 0.9 ">=" 1.0 | 
|  | 26 | assert_false "numeric gt fail"  vercmp 0.9.9 ">" 1.0 | 
|  | 27 | assert_false "numeric gte fail" vercmp 0.9.9 ">=" 1.0 | 
|  | 28 | assert_false "numeric gt fail"  vercmp 0.9a.9 ">" 1.0.1 | 
|  | 29 | assert_false "numeric gte fail" vercmp 0.9a.9 ">=" 1.0.1 | 
|  | 30 |  | 
|  | 31 | assert_false "numeric lt"  vercmp 1.0 "<" 1.0 | 
|  | 32 | assert_true  "numeric lte" vercmp 1.0 "<=" 1.0 | 
|  | 33 | assert_true "numeric lt"   vercmp 1.0 "<" 1.0.1 | 
|  | 34 | assert_true "numeric lte"  vercmp 1.0 "<=" 1.0.1 | 
|  | 35 | assert_true "alpha lt"     vercmp 1.0.1a "<" 1.0.1b | 
|  | 36 | assert_true "alpha lte"    vercmp 1.0.1a "<=" 1.0.1b | 
|  | 37 | assert_true "alpha lt"     vercmp a "<" b | 
|  | 38 | assert_true "alpha lte"    vercmp a "<=" b | 
|  | 39 | assert_true "alpha lt"     vercmp 2.0-rc1 "<" 2.0-rc3 | 
|  | 40 | assert_true "alpha lte"    vercmp 2.0-rc1 "<=" 2.0-rc3 | 
|  | 41 |  | 
|  | 42 | assert_true "eq"       vercmp 1.0 "==" 1.0 | 
|  | 43 | assert_true "eq"       vercmp 1.0.1 "==" 1.0.1 | 
|  | 44 | assert_false "eq fail" vercmp 1.0.1 "==" 1.0.2 | 
|  | 45 | assert_false "eq fail" vercmp 2.0-rc1 "==" 2.0-rc2 | 
|  | 46 |  | 
|  | 47 | report_results |