Beispiel #1
0
    def test_const_covariant_array_assignment_allowed(self):
        foo = UniversalListType(Const(AnyType()))
        bar = UniversalListType(IntegerType())

        self.assertTrue(foo.is_copyable_from(bar, DUMMY_REASONER))
Beispiel #2
0
    def test_incorrect_type_blocked(self):
        foo = PythonList([ 4, 6, 8 ])

        with self.assertRaises(Exception):
            get_manager(foo).add_composite_type(UniversalListType(StringType()))
Beispiel #3
0
    def test_sparse_list_inserting(self):
        foo = PythonList([ 4, 6, 8 ], is_sparse=True)
        get_manager(foo).add_composite_type(UniversalListType(IntegerType(), is_sparse=True))

        foo.insert(4, 12)
        self.assertEqual(list(foo), [ 4, 6, 8, SPARSE_ELEMENT, 12 ])
Beispiel #4
0
    def test_set_on_non_sparse_blocked(self):
        foo = PythonList([ 4, 6, 8 ])
        get_manager(foo).add_composite_type(UniversalListType(IntegerType(), is_sparse=False))

        with self.assertRaises(IndexError):
            foo[4] = 12
Beispiel #5
0
    def test_insert_with_wrong_type_blocked(self):
        foo = PythonList([ 4, 6, 8 ])
        get_manager(foo).add_composite_type(UniversalListType(IntegerType()))

        with self.assertRaises(Exception):
            foo.insert(0, "hello")