예제 #1
0
 def test_empty_setslice_with_objectlist(self):
     l = W_ListObject(self.space, [])
     o = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap("2"), self.space.wrap(3)])
     l.setslice(0, 1, o.length(), o)
     assert l.getitems() == o.getitems()
     l.append(self.space.wrap(17))
     assert l.getitems() != o.getitems()
예제 #2
0
 def test_add_does_not_use_getitems(self):
     l1 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap(2), self.space.wrap(3)])
     l1.getitems = None
     l2 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap(2), self.space.wrap(3)])
     l2.getitems = None
     l3 = self.space.add(l1, l2)
     l4 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap(2), self.space.wrap(3), self.space.wrap(1), self.space.wrap(2), self.space.wrap(3)])
     assert self.space.eq_w(l3, l4)
예제 #3
0
 def test_add_does_not_use_getitems(self):
     l1 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap(2), self.space.wrap(3)])
     l1.getitems = None
     l2 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap(2), self.space.wrap(3)])
     l2.getitems = None
     l3 = self.space.add(l1, l2)
     l4 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap(2), self.space.wrap(3), self.space.wrap(1), self.space.wrap(2), self.space.wrap(3)])
     assert self.space.eq_w(l3, l4)
예제 #4
0
 def test_getitems_does_not_copy_object_list(self):
     l1 = W_ListObject(
         self.space,
         [self.space.wrap(1),
          self.space.wrap("two"),
          self.space.wrap(3)])
     l2 = l1.getitems()
     l2.append(self.space.wrap("four"))
     assert l2 == l1.getitems()
예제 #5
0
    def test_get_items_copy(self):
        l1 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap(2), self.space.wrap(3)])
        l2 = l1.getitems()
        l2.append(self.space.wrap(4))
        assert not l2 == l1.getitems()

        l1 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap("two"), self.space.wrap(3)])
        l2 = l1.getitems()
        l2.append(self.space.wrap("four"))
        assert l2 == l1.getitems()
예제 #6
0
    def test_empty_setslice_with_objectlist(self):
        space = self.space
        w = space.wrap

        l = W_ListObject(space, [])
        o = W_ListObject(space, [space.wrap(1), space.wrap("2"), space.wrap(3)])
        l.setslice(0, 1, o.length(), o)
        assert l.getitems() == o.getitems()
        l.append(space.wrap(17))
        assert l.getitems() != o.getitems()
예제 #7
0
 def test_copy_list(self):
     l1 = W_ListObject(
         self.space,
         [self.space.wrap(1),
          self.space.wrap(2),
          self.space.wrap(3)])
     l2 = l1.clone()
     l2.append(self.space.wrap(4))
     assert not l2 == l1.getitems()
예제 #8
0
 def test_getitems_does_not_copy_object_list(self):
     l1 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap("two"), self.space.wrap(3)])
     l2 = l1.getitems()
     l2.append(self.space.wrap("four"))
     assert l2 == l1.getitems()
예제 #9
0
 def test_copy_list(self):
     l1 = W_ListObject(self.space, [self.space.wrap(1), self.space.wrap(2), self.space.wrap(3)])
     l2 = l1.clone()
     l2.append(self.space.wrap(4))
     assert not l2 == l1.getitems()