def test_goals_data_handler(self): load_goals() # List goals response = self.testapp.get('/goals/data') self.assertEquals(response.status_int, 200) self.assertEquals(response.content_type, 'application/json') data = json.loads(response.normal_body) self.assertEquals(len(data), 3) # Add goal response = self.testapp.post_json('/goals/data', {'title': 'Do Great Things'}) self.assertEquals(response.status_int, 200) self.assertEquals(len(Goal.all()), 4) # Complete goal goal = Goal.all()[0] self.assertFalse(goal.done) response = self.testapp.post_json('/goals/data', {'_id': goal.key.id(), 'done': True, 'action': 'accomplish'}) self.assertEquals(response.status_int, 200) goal = Goal.get(goal.key.id()) self.assertTrue(goal.done) # Update goal response = self.testapp.post_json('/goals/data', {'_id': goal.key.id(), 'action': 'update', 'title': 'Do What Matters'}) self.assertEquals(response.status_int, 200) goal = Goal.get(goal.key.id()) self.assertEquals(goal.title, 'Do What Matters') # Disable goal response = self.testapp.post_json('/goals/data', {'_id': goal.key.id(), 'action': 'delete'}) data = json.loads(response.normal_body) self.assertEquals(response.status_int, 200) self.assertEquals(4, len(Goal.all())) self.assertFalse(data['enabled']) # Restore goal response = self.testapp.post_json('/goals/data', {'_id': goal.key.id(), 'action': 'restore'}) data = json.loads(response.normal_body) self.assertEquals(response.status_int, 200) self.assertEquals(4, len(Goal.all())) self.assertTrue(data['enabled'])
def test_goal_model(self): goal = Goal(title="Do Great things") goal_key = goal.put() self.assertEquals(len(Goal.all()), 1) g = Goal.get(goal_key.id()) self.assertEquals(g.title, "Do Great things") self.assertFalse(g.done) # Delete goal g.delete() self.assertEquals(len(Goal.all()), 1) self.assertFalse(g.enabled) # Restore goal g.restore() self.assertTrue(g.enabled) # Purge goal g.purge() self.assertEquals(len(Goal.all()), 0)