def test_box_list(self): new_list = BoxList({"item": x} for x in range(0, 10)) new_list.extend([{"item": 22}]) assert new_list[-1].item == 22 new_list.append([{"bad_item": 33}]) assert new_list[-1][0].bad_item == 33 assert repr(new_list).startswith("<BoxList:") for x in new_list.to_list(): assert not isinstance(x, (BoxList, Box)) new_list.insert(0, {"test": 5}) new_list.insert(1, ["a", "b"]) new_list.append("x") assert new_list[0].test == 5 assert isinstance(str(new_list), str) assert isinstance(new_list[1], BoxList) assert not isinstance(new_list.to_list(), BoxList)
def test_boxlist(self): new_list = BoxList({'item': x} for x in range(0, 10)) new_list.extend([{'item': 22}]) assert new_list[-1].item == 22 new_list.append([{'bad_item': 33}]) assert new_list[-1][0].bad_item == 33 assert repr(new_list).startswith("<BoxList:") for x in new_list.to_list(): assert not isinstance(x, (BoxList, Box, LightBox)) new_list.insert(0, {'test': 5}) new_list.insert(1, ['a', 'b']) new_list.append('x') assert new_list[0].test == 5 assert isinstance(str(new_list), str) assert isinstance(new_list[1], BoxList) assert not isinstance(new_list.to_list(), BoxList)
def test_frozen_list(self): bl = BoxList([5, 4, 3], frozen_box=True) with pytest.raises(BoxError): bl.pop(1) with pytest.raises(BoxError): bl.remove(4) with pytest.raises(BoxError): bl.sort() with pytest.raises(BoxError): bl.reverse() with pytest.raises(BoxError): bl.append("test") with pytest.raises(BoxError): bl.extend([4]) with pytest.raises(BoxError): del bl[0] with pytest.raises(BoxError): bl[0] = 5 bl2 = BoxList([5, 4, 3]) del bl2[0] assert bl2[0] == 4 bl2[1] = 4 assert bl2[1] == 4