def test(self): def func(cur_tuple, models, field): dic = dict(cur_tuple) keys = dic.keys() if not 'fieldD' in keys: return True elif dic['fieldD'] % 3 != 1: return False if not ('fieldE' in keys and 'fieldH' in keys): return True elif dic['fieldE'] ^ dic['fieldH']: return False return True dfs.size = 30 dfs.total = 0 to_be_computed = [] cur_tup = [('fieldA', 'X'), ('fieldB', 199), ('fieldC', 'general')] unique_together = TestModelFieldsTwo._meta.unique_together unique = list(unique_together) unique = sort_unique_tuples(unique, TestModelFieldsTwo) unique_constraints = [unique_items(un_tuple) for un_tuple in unique] constraints = [func] + unique_constraints dfs(30, cur_tup, 4, to_be_computed, constraints, TestModelFieldsTwo, False) self.assertEqual(len(list(TestModelFieldsTwo.objects.all())), 30) for mdl in list(TestModelFieldsTwo.objects.all()): self.assertEqual(mdl.fieldA, 'X') self.assertEqual(mdl.fieldB, 199) self.assertEqual(mdl.fieldC, 'general') self.assertTrue(mdl.fieldD in [13, 19, 31, 43]) self.assertTrue(mdl.fieldF in [6, 28, 496, 8128, 33550336]) self.assertTrue(mdl.fieldG in ['Mathematics', 'Physics', 'Chemistry', 'Biology']) self.assertTrue(not (mdl.fieldE ^ mdl.fieldH))
def test(self): self.assertEqual(sort_unique_tuples((('fieldA',), ('fieldA', 'fieldD'), ('fieldC', 'fieldX', 'fieldB'), ('fieldC', 'fieldE', 'fieldH'), ('fieldA', 'fieldX', 'fieldC')), TestModelFields), (('fieldA',), ('fieldA', 'fieldC', 'fieldX'), ('fieldA', 'fieldD'), ('fieldB', 'fieldC', 'fieldX'), ('fieldC', 'fieldE', 'fieldH'))) self.assertEqual(sort_unique_tuples((('fieldA', 'fieldD'), ('fieldA', 'fieldE', 'fieldX')), TestModelFields), (('fieldA', 'fieldD'), ('fieldA', 'fieldE', 'fieldX'))) self.assertEqual(sort_unique_tuples((('fieldA', 'fieldE', 'fieldX'), ('fieldA', 'fieldD')), TestModelFields), (('fieldA', 'fieldD'), ('fieldA', 'fieldE', 'fieldX'))) self.assertEqual(sort_unique_tuples((('fieldA', 'fieldD', 'fieldX'), ('fieldA', 'fieldD')), TestModelFields), (('fieldA', 'fieldD'), ('fieldA', 'fieldD', 'fieldX'))) self.assertEqual(sort_unique_tuples((('fieldA', 'fieldE'), ('fieldA', 'fieldE', 'fieldX')), TestModelFields), (('fieldA', 'fieldE'), ('fieldA', 'fieldE', 'fieldX'))) self.assertEqual(sort_unique_tuples((('fieldA', 'fieldD'), ('fieldA', 'fieldD')), TestModelFields), (('fieldA', 'fieldD'), ('fieldA', 'fieldD')))