def testInt(self):
for val in [-100, -3, 0, 16, 128, 923874]:
self.assertTrue(ht.TInt(val))
+ self.assertTrue(ht.TNumber(val))
for val in [False, True, None, "", [], "Hello", 0.0, 0.23, -3818.163]:
self.assertFalse(ht.TInt(val))
def testFloat(self):
for val in [-100.21, -3.0, 0.0, 16.12, 128.3433, 923874.928]:
self.assertTrue(ht.TFloat(val))
+ self.assertTrue(ht.TNumber(val))
for val in [False, True, None, "", [], "Hello", 0, 28, -1, -3281]:
self.assertFalse(ht.TFloat(val))
+ def testNumber(self):
+ for val in [-100, -3, 0, 16, 128, 923874,
+ -100.21, -3.0, 0.0, 16.12, 128.3433, 923874.928]:
+ self.assertTrue(ht.TNumber(val))
+
+ for val in [False, True, None, "", [], "Hello", "1"]:
+ self.assertFalse(ht.TNumber(val))
+
def testString(self):
for val in ["", "abc", "Hello World", "123",
u"", u"\u272C", u"abc"]:
self.assertTrue(fn({"other": 11}))
self.assertTrue(fn({"other": object()}))
+ def testJobId(self):
+ for i in [0, 1, 4395, 2347625220]:
+ self.assertTrue(ht.TJobId(i))
+ self.assertTrue(ht.TJobId(str(i)))
+ self.assertFalse(ht.TJobId(-(i + 1)))
+
+ for i in ["", "-", ".", ",", "a", "99j", "job-123", "\t", " 83 ",
+ None, [], {}, object()]:
+ self.assertFalse(ht.TJobId(i))
+
+ def testRelativeJobId(self):
+ for i in [-1, -93, -4395]:
+ self.assertTrue(ht.TRelativeJobId(i))
+ self.assertFalse(ht.TRelativeJobId(str(i)))
+
+ for i in [0, 1, 2, 10, 9289, "", "0", "-1", "-999"]:
+ self.assertFalse(ht.TRelativeJobId(i))
+ self.assertFalse(ht.TRelativeJobId(str(i)))
+
+ def testItems(self):
+ self.assertRaises(AssertionError, ht.TItems, [])
+
+ fn = ht.TItems([ht.TString])
+ self.assertFalse(fn([0]))
+ self.assertFalse(fn([None]))
+ self.assertTrue(fn(["Hello"]))
+ self.assertTrue(fn(["Hello", "World"]))
+ self.assertTrue(fn(["Hello", 0, 1, 2, "anything"]))
+
+ fn = ht.TItems([ht.TAny, ht.TInt, ht.TAny])
+ self.assertTrue(fn(["Hello", 0, []]))
+ self.assertTrue(fn(["Hello", 893782]))
+ self.assertTrue(fn([{}, -938210858947, None]))
+ self.assertFalse(fn(["Hello", []]))
+
if __name__ == "__main__":
testutils.GanetiTestProgram()