summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/selftest/cases/oelib/types.py
diff options
context:
space:
mode:
Diffstat (limited to 'meta/lib/oeqa/selftest/cases/oelib/types.py')
-rw-r--r--meta/lib/oeqa/selftest/cases/oelib/types.py50
1 files changed, 50 insertions, 0 deletions
diff --git a/meta/lib/oeqa/selftest/cases/oelib/types.py b/meta/lib/oeqa/selftest/cases/oelib/types.py
new file mode 100644
index 0000000000..99c84044be
--- /dev/null
+++ b/meta/lib/oeqa/selftest/cases/oelib/types.py
@@ -0,0 +1,50 @@
1from oeqa.selftest.case import OESelftestTestCase
2from oe.maketype import create
3
4class TestBooleanType(OESelftestTestCase):
5 def test_invalid(self):
6 self.assertRaises(ValueError, create, '', 'boolean')
7 self.assertRaises(ValueError, create, 'foo', 'boolean')
8 self.assertRaises(TypeError, create, object(), 'boolean')
9
10 def test_true(self):
11 self.assertTrue(create('y', 'boolean'))
12 self.assertTrue(create('yes', 'boolean'))
13 self.assertTrue(create('1', 'boolean'))
14 self.assertTrue(create('t', 'boolean'))
15 self.assertTrue(create('true', 'boolean'))
16 self.assertTrue(create('TRUE', 'boolean'))
17 self.assertTrue(create('truE', 'boolean'))
18
19 def test_false(self):
20 self.assertFalse(create('n', 'boolean'))
21 self.assertFalse(create('no', 'boolean'))
22 self.assertFalse(create('0', 'boolean'))
23 self.assertFalse(create('f', 'boolean'))
24 self.assertFalse(create('false', 'boolean'))
25 self.assertFalse(create('FALSE', 'boolean'))
26 self.assertFalse(create('faLse', 'boolean'))
27
28 def test_bool_equality(self):
29 self.assertEqual(create('n', 'boolean'), False)
30 self.assertNotEqual(create('n', 'boolean'), True)
31 self.assertEqual(create('y', 'boolean'), True)
32 self.assertNotEqual(create('y', 'boolean'), False)
33
34class TestList(OESelftestTestCase):
35 def assertListEqual(self, value, valid, sep=None):
36 obj = create(value, 'list', separator=sep)
37 self.assertEqual(obj, valid)
38 if sep is not None:
39 self.assertEqual(obj.separator, sep)
40 self.assertEqual(str(obj), obj.separator.join(obj))
41
42 def test_list_nosep(self):
43 testlist = ['alpha', 'beta', 'theta']
44 self.assertListEqual('alpha beta theta', testlist)
45 self.assertListEqual('alpha beta\ttheta', testlist)
46 self.assertListEqual('alpha', ['alpha'])
47
48 def test_list_usersep(self):
49 self.assertListEqual('foo:bar', ['foo', 'bar'], ':')
50 self.assertListEqual('foo:bar:baz', ['foo', 'bar', 'baz'], ':')