def test_get_data_lookup_filter(self): user = UserF.create() project = ProjectF.create() category_1 = CategoryFactory(**{'project': project}) lookup_field = LookupFieldFactory(**{ 'key': 'lookup', 'category': category_1 }) lookup_1 = LookupValueFactory(**{ 'name': 'Ms. Piggy', 'field': lookup_field }) lookup_2 = LookupValueFactory(**{ 'name': 'Kermit', 'field': lookup_field }) category_2 = CategoryFactory(**{'project': project}) lookup_field_2 = LookupFieldFactory(**{ 'key': 'bla', 'category': category_2 }) lookup_3 = LookupValueFactory(**{ 'name': 'Gonzo', 'field': lookup_field_2 }) UserGroupF.create( add_users=[user], **{ 'project': project, 'filters': { category_1.id: {'lookup': [lookup_1.id, lookup_2.id]} } } ) for x in range(0, 5): ObservationFactory.create(**{ 'project': project, 'category': category_1, 'properties': {'lookup': lookup_1.id} }) ObservationFactory.create(**{ 'project': project, 'category': category_1, 'properties': {'lookup': lookup_2.id} }) ObservationFactory.create(**{ 'project': project, 'category': category_2, 'properties': {'bla': lookup_3.id} }) self.assertEqual(project.get_all_contributions(user).count(), 10)
def test_get_data_lookup_filter(self): user = UserF.create() project = ProjectF.create(add_admins=[user]) category_1 = CategoryFactory(**{'project': project}) lookup_field = LookupFieldFactory(**{ 'key': 'lookup', 'category': category_1 }) lookup_1 = LookupValueFactory(**{ 'name': 'Ms. Piggy', 'field': lookup_field }) lookup_2 = LookupValueFactory(**{ 'name': 'Kermit', 'field': lookup_field }) category_2 = CategoryFactory(**{'project': project}) lookup_field_2 = LookupFieldFactory(**{ 'key': 'bla', 'category': category_2 }) lookup_3 = LookupValueFactory(**{ 'name': 'Gonzo', 'field': lookup_field_2 }) for x in range(0, 5): ObservationFactory.create(**{ 'project': project, 'category': category_1, 'properties': {'lookup': lookup_1.id} }) ObservationFactory.create(**{ 'project': project, 'category': category_1, 'properties': {'lookup': lookup_2.id} }) ObservationFactory.create(**{ 'project': project, 'category': category_2, 'properties': {'bla': lookup_3.id} }) view = GroupingFactory(**{'project': project}) RuleFactory(**{ 'grouping': view, 'category': category_1, 'constraints': {'lookup': [lookup_1.id, lookup_2.id]} }) self.assertEqual(view.data(user).count(), 10)