def test_search(self): rv = self.app.post('/') self.assertEquals(rv.status_code, 200) rv = self.app.post('/', data=dict(search_by="author",search_text="something")) self.assertEquals(json.loads(rv.data).get('result'), []) Book.create(title="Some funny book", info="Really funny book") rv = self.app.post('/', data=dict(search_by="name",search_text="some")) self.assertEquals(json.loads(rv.data).get('result')[0].get('title'), 'Some funny book')
def test_authors(self): # Need auth rv = self.app.get('/authors/') self.assertEquals(rv.status_code, 401) # Method not allowed rv = self.app.post('/authors/') self.assertEquals(rv.status_code, 405) User(name="admin", password="******", email="*****@*****.**").save() # Authenticate rv = self.app.post('/login/', data=dict(username="******", password="******")) rv = self.app.get('/authors/') self.assertEquals(rv.status_code, 200) # Add new author b = Book.create(title="Some book", info="Some book info") rv = self.app.post('/author/', data=dict(name="John Smith", info="Some info", books=[b])) self.assertEquals(rv.status_code, 302) rv = self.app.post('/author/') self.assertEquals(rv.status_code, 200) # invalid(empty) data self.assertIn("This field is required", rv.data) # Update author rv = self.app.get('/author/1/') self.assertEquals(rv.status_code, 200) rv = self.app.get('/author/2/') self.assertEquals(rv.status_code, 404) rv = self.app.post('/author/1/', data=dict(name="Eric Johnson", info="Some real info")) self.assertEquals(rv.status_code, 302) rv = self.app.post('/author/1/', data=dict(info="Some real info")) self.assertEquals(rv.status_code, 200) self.assertIn("This field is required", rv.data) # Delete author rv = self.app.get('/author/1/delete/') self.assertEquals(rv.status_code, 302) rv = self.app.get('/author/1/delete/') self.assertEquals(rv.status_code, 404)