def setUp(self): self.factory = APIRequestFactory() self.admin = UserF.create() self.creator = UserF.create() self.viewer = UserF.create() self.project = ProjectF( add_admins=[self.admin], add_contributors=[self.creator] ) self.contribution = ObservationFactory.create( **{'project': self.project, 'creator': self.creator} ) self.viewer = UserF.create() self.grouping = GroupingFactory.create( add_viewers=[self.viewer], **{'project': self.project} ) RuleFactory.create(**{ 'grouping': self.grouping, 'category': self.contribution.category }) self.image_file = ImageFileFactory.create( **{'contribution': self.contribution, 'creator': self.creator} )
def test_get_createdate_filter(self): rule = RuleFactory.create( **{'min_date': datetime.datetime(2007, 12, 5, 12, 00)} ) self.assertEqual( '<li>the contribution has been created after ' 'Dec 05 2007 12:00</li>', get_createdate_filter(rule) ) rule = RuleFactory.create( **{'max_date': datetime.datetime(2012, 12, 5, 15, 00)} ) self.assertEqual( '<li>the contribution has been created before ' 'Dec 05 2012 15:00</li>', get_createdate_filter(rule) ) rule = RuleFactory.create(**{ 'min_date': datetime.datetime(2007, 12, 5, 12, 00), 'max_date': datetime.datetime(2012, 12, 5, 15, 00) }) self.assertEqual( '<li>the contribution has been created after ' 'Dec 05 2007 12:00 and before Dec 05 2012 15:00</li>', get_createdate_filter(rule) )
def setUp(self): self.factory = APIRequestFactory() self.admin = UserF.create() self.creator = UserF.create() self.viewer = UserF.create() self.project = ProjectF(add_admins=[self.admin], add_contributors=[self.creator]) self.contribution = ObservationFactory.create(**{ 'project': self.project, 'creator': self.creator }) self.viewer = UserF.create() self.grouping = GroupingFactory.create(add_viewers=[self.viewer], **{'project': self.project}) RuleFactory.create(**{ 'grouping': self.grouping, 'category': self.contribution.category }) self.image_file = ImageFileFactory.create(**{ 'contribution': self.contribution, 'creator': self.creator })
def test_delete_image_with_viewer(self): viewer = UserF.create() dataview = GroupingFactory.create(add_viewers=[viewer], **{'project': self.project}) RuleFactory.create(**{ 'grouping': dataview, 'category': self.contribution.category }) response = self.delete(viewer) self.assertEqual(response.status_code, 404)
def test_delete_image_with_viewer(self): viewer = UserF.create() dataview = GroupingFactory.create( add_viewers=[viewer], **{'project': self.project} ) RuleFactory.create(**{ 'grouping': dataview, 'category': self.contribution.category }) response = self.delete(viewer) self.assertEqual(response.status_code, 404)
def test_post_images_with_anonymous_to_public(self): self.project.isprivate = False self.project.everyone_contributes = 'true' self.project.save() grouping = GroupingFactory.create( **{'project': self.project, 'isprivate': False} ) RuleFactory.create(**{ 'grouping': grouping, 'category': self.contribution.category }) response = self.post(AnonymousUser()) self.assertEqual(response.status_code, 201)
def test_post_images_with_anonymous_to_public(self): self.project.isprivate = False self.project.everyone_contributes = 'true' self.project.save() grouping = GroupingFactory.create(**{ 'project': self.project, 'isprivate': False }) RuleFactory.create(**{ 'grouping': grouping, 'category': self.contribution.category }) response = self.post(AnonymousUser()) self.assertEqual(response.status_code, 201)
def test_filters(self): category = CategoryFactory.create() TextFieldFactory.create(**{'category': category, 'key': 'text'}) NumericFieldFactory.create(**{'category': category, 'key': 'number'}) DateFieldFactory.create(**{'category': category, 'key': 'date'}) DateTimeFieldFactory.create( **{'category': category, 'key': 'datetime'}) TimeFieldFactory.create(**{'category': category, 'key': 'time'}) lookup = LookupFieldFactory.create( **{'category': category, 'key': 'lookup'}) val_1 = LookupValueFactory.create(**{'field': lookup}) multiple = MultipleLookupFieldFactory.create( **{'category': category, 'key': 'multiple'}) mul_1 = MultipleLookupValueFactory.create(**{'field': multiple}) rule = RuleFactory.create(**{ 'category': category, 'min_date': datetime.datetime(2007, 12, 5, 12, 00), 'max_date': datetime.datetime(2012, 12, 5, 15, 00), 'constraints': { 'text': 'blah', 'number': {'minval': 0, 'maxval': 10}, 'date': {'minval': 0, 'maxval': 10}, 'datetime': {'minval': 0, 'maxval': 10}, 'time': {'minval': 0, 'maxval': 10}, 'lookup': [val_1.id], 'multiple': [mul_1.id] } }) result = filters(rule) self.assertEqual(result.count('<li>'), 8)
def test_get_createdate_filter(self): rule = RuleFactory.create( **{'min_date': datetime.datetime(2007, 12, 5, 12, 00)}) self.assertEqual( '<li>the contribution has been created after ' 'Dec 05 2007 12:00</li>', get_createdate_filter(rule)) rule = RuleFactory.create( **{'max_date': datetime.datetime(2012, 12, 5, 15, 00)}) self.assertEqual( '<li>the contribution has been created before ' 'Dec 05 2012 15:00</li>', get_createdate_filter(rule)) rule = RuleFactory.create( **{ 'min_date': datetime.datetime(2007, 12, 5, 12, 00), 'max_date': datetime.datetime(2012, 12, 5, 15, 00) }) self.assertEqual( '<li>the contribution has been created after ' 'Dec 05 2007 12:00 and before Dec 05 2012 15:00</li>', get_createdate_filter(rule))
def test_filters(self): category = CategoryFactory.create() TextFieldFactory.create(**{'category': category, 'key': 'text'}) NumericFieldFactory.create(**{'category': category, 'key': 'number'}) DateFieldFactory.create(**{'category': category, 'key': 'date'}) DateTimeFieldFactory.create(**{ 'category': category, 'key': 'datetime' }) TimeFieldFactory.create(**{'category': category, 'key': 'time'}) lookup = LookupFieldFactory.create(**{ 'category': category, 'key': 'lookup' }) val_1 = LookupValueFactory.create(**{'field': lookup}) multiple = MultipleLookupFieldFactory.create(**{ 'category': category, 'key': 'multiple' }) mul_1 = MultipleLookupValueFactory.create(**{'field': multiple}) rule = RuleFactory.create( **{ 'category': category, 'min_date': datetime.datetime(2007, 12, 5, 12, 00), 'max_date': datetime.datetime(2012, 12, 5, 15, 00), 'constraints': { 'text': 'blah', 'number': { 'minval': 0, 'maxval': 10 }, 'date': { 'minval': 0, 'maxval': 10 }, 'datetime': { 'minval': 0, 'maxval': 10 }, 'time': { 'minval': 0, 'maxval': 10 }, 'lookup': [val_1.id], 'multiple': [mul_1.id] } }) result = filters(rule) self.assertEqual(result.count('<li>'), 8)