def test_no_exception(self): with self.assertRaises(AssertionError) as cm: with allow_missing(): pass # No exceptions raised exc = cm.exception self.assertEqual('No differences found: allow_missing', str(exc))
def test_allow_some(self): differences = [Extra('xxx'), Missing('yyy')] with self.assertRaises(DataError) as cm: with allow_missing(): raise DataError('example error', differences) rejected = list(cm.exception.differences) self.assertEqual(rejected, [Extra('xxx')])
def test_kwds(self): in_diffs = [ Missing('xxx', aaa='foo'), Missing('yyy', aaa='bar'), Extra('zzz', aaa='foo'), ] with self.assertRaises(DataError) as cm: with allow_missing('example allowance', aaa='foo'): raise DataError('example error', in_diffs) rejected = list(cm.exception.differences) self.assertEqual(rejected, [Missing('yyy', aaa='bar'), Extra('zzz', aaa='foo')])
def test_allow_all(self): with allow_missing(): raise DataError('example error', [Missing('xxx'), Missing('yyy')])