def test_merge_negate_nonexistent(self): c = Applications(['blue']) c.merge(['~red']) assert len(c) == 1 assert 'red' not in c assert '~red' not in c assert 'blue' in c
def test_merge(self): DATA0 = ['one', 'two', 'three', 'four'] DATA1 = ['one', 'three', 'five', 'seven'] c = Applications(DATA0) c.merge(DATA1) assert len(c) == 6 assert c[:4] == DATA0 assert c[4] == DATA1[2] assert c[5] == DATA1[3]
def test_merge_negate(self): negater = '~' DATA0 = ['red', 'green', 'blue'] DATA1 = [negater + 'red', 'yellow', 'black'] c = Applications(DATA0) c.merge(DATA1, negater) assert len(c) == len(DATA0)-1 + len(DATA1)-1 assert c[0] == DATA0[1] assert c[1] == DATA0[2] assert c[2] == DATA1[1] assert c[3] == DATA1[2]
def test_append_if_new_negate(self): a = Applications(TESTLIST1) a.append_if_new(TESTLIST2[2]) self.assertSequenceEqual(a, TESTLIST1[::2])
def test_merge_unique_negate_instance(self): a = Applications(TESTLIST1) a.merge_unique(Applications(TESTLIST2)) self.assertSequenceEqual(a, GOALLIST)
def test_merge_negate_default(self): c = Applications(['red']) c.merge(['~red']) assert len(c) == 0
def test_constructor_negate(self): a = Applications(TESTLIST1 + TESTLIST2) self.assertSequenceEqual(a, GOALLIST)
def test_inheritance(self): a = Applications() self.assertIsInstance(a, Classes)
def test_repr_negations(self): negater = '~' a = Applications(TESTLIST2, negation_prefix=negater) self.assertEqual( '%r' % a, "%s(%r, '%s')" % (a.__class__.__name__, TESTLIST2, negater))
def test_repr_empty(self): negater = '%%' a = Applications(negation_prefix=negater) self.assertEqual('%r' % a, "%s(%r, '%s')" % (a.__class__.__name__, [], negater))