def test_append(self): #Test appending good value values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=True) tcl.append("jack") actual = len(tcl) expected = 3 self.assertTrue(actual == expected) #Test appending bad value, suppression on values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=True) tcl.append(3) actual = len(tcl) expected = 2 self.assertTrue(actual == expected) #Test appending bad value, suppression off values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=False) with self.assertRaises(TypeError): tcl.append(3)
def test_extend(self): #Test extend with empty iterable values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=True) tcl.extend([]) actual = len(tcl) expected = 2 self.assertTrue(actual == expected) #Test extend with a non-iterable values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=True) tcl.extend("jack") actual = len(tcl) expected = 3 self.assertTrue(actual == expected) #Test extend with all valid values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=True) tcl.extend(values) actual = len(tcl) expected = 4 self.assertTrue(actual == expected) #Test extend with some invalid, suppressed values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=True) tcl.extend(["jack", 3]) actual = len(tcl) expected = 3 self.assertTrue(actual == expected) #Test extend with some invalid, not suppressed values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=False) with self.assertRaises(TypeError): tcl.extend(["jack", 3])
def test_init(self): #Test empty constructor empty_tcl = Structs.TypeCheckedList(int, values=None, suppress_type_errors=True) actual = len(empty_tcl) expected = 0 self.assertTrue(actual == expected) #Test constructor with values values = [1, 2, 3, 'bob'] tcl = Structs.TypeCheckedList(int, values=values, suppress_type_errors=True) actual = len(tcl) expected = 3 self.assertTrue(actual == expected) #Test bad extend with no TypeError suppression values = [1, 2, 3, 'bob'] with self.assertRaises(TypeError): tcl = Structs.TypeCheckedList(int, values=values, suppress_type_errors=False)
def test_clear(self): values = ["bob", "steve"] tcl = Structs.TypeCheckedList(str, values=values, suppress_type_errors=True) tcl.append("jack") actual = len(tcl) expected = 3 self.assertTrue(actual == expected) tcl.clear() actual = len(tcl) expected = 0 self.assertTrue(actual == expected)