def test_put_tags_view_will_raise_404(self): """testing if the PUT /api/entities/{id}/tags view will return 404 """ from stalker import db, User, Tag test_user1 = User(name='Test User 1', login='******', email='*****@*****.**', password='******') db.DBSession.add(test_user1) tag1 = Tag(name='Tag1') tag2 = Tag(name='Tag2') tag3 = Tag(name='Tag3') tag4 = Tag(name='Tag4') tag5 = Tag(name='Tag5') db.DBSession.add_all([tag1, tag2, tag3, tag4, tag5]) test_user1.tags = [tag1, tag2, tag3] import transaction transaction.commit() test_user1 = User.query.filter(User.login == test_user1.login).first() self.test_app.put('/api/entities/%s/tags?tag=%s' % (test_user1.id, tag4.name), status=404)
def test_delete_tags_view_is_working_properly(self): """testing if the DELETE /api/entities/{id}/tags view is working properly """ from stalker import db, User, Tag test_user1 = User(name='Test User 1', login='******', email='*****@*****.**', password='******') db.DBSession.add(test_user1) tag1 = Tag(name='Tag1') tag2 = Tag(name='Tag2') tag3 = Tag(name='Tag3') tag4 = Tag(name='Tag4') tag5 = Tag(name='Tag5') db.DBSession.add_all([tag1, tag2, tag3, tag4, tag5]) test_user1.tags = [tag1, tag2, tag3] import transaction transaction.commit() test_user1 = User.query.filter(User.login == test_user1.login).first() self.test_app.delete('/api/entities/%s/tags?tag=%s' % (test_user1.id, tag3.name), status=200) test_user1 = User.query.filter(User.login == test_user1.login).first() self.assertEqual(sorted([tag.name for tag in test_user1.tags]), ['Tag1', 'Tag2'])
def test_get_tags_view_is_working_properly(self): """testing if the GET /api/entities/{id}/tags view is working properly """ from stalker import db, User, Tag test_user1 = User(name='Test User 1', login='******', email='*****@*****.**', password='******') db.DBSession.add(test_user1) tag1 = Tag(name='Tag1') tag2 = Tag(name='Tag2') tag3 = Tag(name='Tag3') tag4 = Tag(name='Tag4') tag5 = Tag(name='Tag5') db.DBSession.add_all([tag1, tag2, tag3, tag4, tag5]) test_user1.tags = [tag1, tag2, tag3] import transaction transaction.commit() test_user1 = User.query.filter(User.login == test_user1.login).first() response = self.test_app.get('/api/entities/%s/tags' % test_user1.id, status=200) self.assertEqual( sorted(response.json_body), sorted([{ 'id': tag1.id, '$ref': '/api/tags/%s' % tag1.id, 'name': 'Tag1', 'entity_type': 'Tag' }, { 'id': tag2.id, '$ref': '/api/tags/%s' % tag2.id, 'name': 'Tag2', 'entity_type': 'Tag' }, { 'id': tag3.id, '$ref': '/api/tags/%s' % tag3.id, 'name': 'Tag3', 'entity_type': 'Tag' }]))