root / test / hs / Test / Ganeti / Constants.hs @ 896cc964
History | View | Annotate | Download (2.9 kB)
1 | 285d04a1 | Jose A. Lopes | {-# LANGUAGE TemplateHaskell #-} |
---|---|---|---|
2 | 285d04a1 | Jose A. Lopes | {-| Unittests for constants |
3 | 285d04a1 | Jose A. Lopes | |
4 | 285d04a1 | Jose A. Lopes | -} |
5 | 285d04a1 | Jose A. Lopes | |
6 | 285d04a1 | Jose A. Lopes | {- |
7 | 285d04a1 | Jose A. Lopes | |
8 | 285d04a1 | Jose A. Lopes | Copyright (C) 2013 Google Inc. |
9 | 285d04a1 | Jose A. Lopes | |
10 | 285d04a1 | Jose A. Lopes | This program is free software; you can redistribute it and/or modify |
11 | 285d04a1 | Jose A. Lopes | it under the terms of the GNU General Public License as published by |
12 | 285d04a1 | Jose A. Lopes | the Free Software Foundation; either version 2 of the License, or |
13 | 285d04a1 | Jose A. Lopes | (at your option) any later version. |
14 | 285d04a1 | Jose A. Lopes | |
15 | 285d04a1 | Jose A. Lopes | This program is distributed in the hope that it will be useful, but |
16 | 285d04a1 | Jose A. Lopes | WITHOUT ANY WARRANTY; without even the implied warranty of |
17 | 285d04a1 | Jose A. Lopes | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
18 | 285d04a1 | Jose A. Lopes | General Public License for more details. |
19 | 285d04a1 | Jose A. Lopes | |
20 | 285d04a1 | Jose A. Lopes | You should have received a copy of the GNU General Public License |
21 | 285d04a1 | Jose A. Lopes | along with this program; if not, write to the Free Software |
22 | 285d04a1 | Jose A. Lopes | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA |
23 | 285d04a1 | Jose A. Lopes | 02110-1301, USA. |
24 | 285d04a1 | Jose A. Lopes | |
25 | 285d04a1 | Jose A. Lopes | -} |
26 | 285d04a1 | Jose A. Lopes | |
27 | 285d04a1 | Jose A. Lopes | module Test.Ganeti.Constants (testConstants) where |
28 | 285d04a1 | Jose A. Lopes | |
29 | 285d04a1 | Jose A. Lopes | import Test.HUnit (Assertion) |
30 | 285d04a1 | Jose A. Lopes | import qualified Test.HUnit as HUnit |
31 | 285d04a1 | Jose A. Lopes | |
32 | 285d04a1 | Jose A. Lopes | import qualified Ganeti.Constants as Constants |
33 | 285d04a1 | Jose A. Lopes | import qualified Ganeti.ConstantUtils as ConstantUtils |
34 | 285d04a1 | Jose A. Lopes | import qualified Test.Ganeti.TestHelper as TestHelper |
35 | 285d04a1 | Jose A. Lopes | |
36 | f89ec0e0 | Jose A. Lopes | {-# ANN module "HLint: ignore Use camelCase" #-} |
37 | f89ec0e0 | Jose A. Lopes | |
38 | 285d04a1 | Jose A. Lopes | case_buildVersion :: Assertion |
39 | 285d04a1 | Jose A. Lopes | case_buildVersion = do |
40 | 285d04a1 | Jose A. Lopes | HUnit.assertBool "Config major lower-bound violation" |
41 | 285d04a1 | Jose A. Lopes | (Constants.configMajor >= 0) |
42 | 285d04a1 | Jose A. Lopes | HUnit.assertBool "Config major upper-bound violation" |
43 | 285d04a1 | Jose A. Lopes | (Constants.configMajor <= 99) |
44 | 285d04a1 | Jose A. Lopes | HUnit.assertBool "Config minor lower-bound violation" |
45 | 285d04a1 | Jose A. Lopes | (Constants.configMinor >= 0) |
46 | 285d04a1 | Jose A. Lopes | HUnit.assertBool "Config minor upper-bound violation" |
47 | 285d04a1 | Jose A. Lopes | (Constants.configMinor <= 99) |
48 | 285d04a1 | Jose A. Lopes | HUnit.assertBool "Config revision lower-bound violation" |
49 | 285d04a1 | Jose A. Lopes | (Constants.configRevision >= 0) |
50 | 285d04a1 | Jose A. Lopes | HUnit.assertBool "Config revision upper-bound violation" |
51 | 285d04a1 | Jose A. Lopes | (Constants.configRevision <= 9999) |
52 | 285d04a1 | Jose A. Lopes | HUnit.assertBool "Config version lower-bound violation" |
53 | 285d04a1 | Jose A. Lopes | (Constants.configVersion >= 0) |
54 | 285d04a1 | Jose A. Lopes | HUnit.assertBool "Config version upper-bound violation" |
55 | 285d04a1 | Jose A. Lopes | (Constants.configVersion <= 99999999) |
56 | 285d04a1 | Jose A. Lopes | HUnit.assertEqual "Build version" |
57 | 285d04a1 | Jose A. Lopes | (ConstantUtils.buildVersion 0 0 0) 0 |
58 | 285d04a1 | Jose A. Lopes | HUnit.assertEqual "Build version" |
59 | 285d04a1 | Jose A. Lopes | (ConstantUtils.buildVersion 10 10 1010) 10101010 |
60 | 285d04a1 | Jose A. Lopes | HUnit.assertEqual "Build version" |
61 | 285d04a1 | Jose A. Lopes | (ConstantUtils.buildVersion 12 34 5678) 12345678 |
62 | 285d04a1 | Jose A. Lopes | HUnit.assertEqual "Build version" |
63 | 285d04a1 | Jose A. Lopes | (ConstantUtils.buildVersion 99 99 9999) 99999999 |
64 | 285d04a1 | Jose A. Lopes | HUnit.assertEqual "Build version" |
65 | 285d04a1 | Jose A. Lopes | (ConstantUtils.buildVersion |
66 | 285d04a1 | Jose A. Lopes | Constants.configMajor |
67 | 285d04a1 | Jose A. Lopes | Constants.configMinor |
68 | 285d04a1 | Jose A. Lopes | Constants.configRevision) Constants.configVersion |
69 | 285d04a1 | Jose A. Lopes | HUnit.assertEqual "Build version" |
70 | 285d04a1 | Jose A. Lopes | (ConstantUtils.buildVersion |
71 | 285d04a1 | Jose A. Lopes | Constants.configMajor |
72 | 285d04a1 | Jose A. Lopes | Constants.configMinor |
73 | 285d04a1 | Jose A. Lopes | Constants.configRevision) Constants.protocolVersion |
74 | 285d04a1 | Jose A. Lopes | |
75 | 285d04a1 | Jose A. Lopes | TestHelper.testSuite "Constants" |
76 | 285d04a1 | Jose A. Lopes | [ 'case_buildVersion |
77 | 285d04a1 | Jose A. Lopes | ] |