def test_do_summary(self): fake_request = self.mox.CreateMockAnything() self.mox.StubOutWithMock(stacky_server, 'get_event_names') events = [{'event': 'test.start'}, {'event': 'test.end'}] stacky_server.get_event_names().AndReturn(events) fake_request.GET = {'name': 'test.event'} results = self.mox.CreateMockAnything() models.Timing.objects.filter(name='test').AndReturn(results) results.exclude(mox.IgnoreArg()).AndReturn(results) results.exclude(diff__lt=0).AndReturn(results) timing1 = self.mox.CreateMockAnything() timing1.lifecycle = self.mox.CreateMockAnything() timing1.lifecycle.instance = INSTANCE_ID_1 timing1.diff = 10 timing2 = self.mox.CreateMockAnything() timing2.lifecycle = self.mox.CreateMockAnything() timing2.lifecycle.instance = INSTANCE_ID_2 timing2.diff = 20 results.__len__().AndReturn(2) results.__iter__().AndReturn([timing1, timing2].__iter__()) self.mox.ReplayAll() resp = stacky_server.do_summary(fake_request) self.assertEqual(resp.status_code, 200) json_resp = json.loads(resp.content) self.assertEqual(len(json_resp), 2) self.assertEqual(json_resp[0], ["Event", "N", "Min", "Max", "Avg"]) self.assertEqual( json_resp[1], [u'test', 2, u'0d 00:00:10.0', u'0d 00:00:20.0', u'0d 00:00:15']) self.mox.VerifyAll()
def test_do_summary(self): fake_request = self.mox.CreateMockAnything() self.mox.StubOutWithMock(stacky_server, "get_event_names") events = [{"event": "test.start"}, {"event": "test.end"}] stacky_server.get_event_names().AndReturn(events) fake_request.GET = {"name": "test.event"} results = self.mox.CreateMockAnything() models.Timing.objects.filter(name="test").AndReturn(results) results.exclude(mox.IgnoreArg()).AndReturn(results) results.exclude(diff__lt=0).AndReturn(results) timing1 = self.mox.CreateMockAnything() timing1.lifecycle = self.mox.CreateMockAnything() timing1.lifecycle.instance = INSTANCE_ID_1 timing1.diff = 10 timing2 = self.mox.CreateMockAnything() timing2.lifecycle = self.mox.CreateMockAnything() timing2.lifecycle.instance = INSTANCE_ID_2 timing2.diff = 20 results.__len__().AndReturn(2) results.__iter__().AndReturn([timing1, timing2].__iter__()) self.mox.ReplayAll() resp = stacky_server.do_summary(fake_request) self.assertEqual(resp.status_code, 200) json_resp = json.loads(resp.content) self.assertEqual(len(json_resp), 2) self.assertEqual(json_resp[0], ["Event", "N", "Min", "Max", "Avg"]) self.assertEqual(json_resp[1], [u"test", 2, u"0d 00:00:10.0", u"0d 00:00:20.0", u"0d 00:00:15"]) self.mox.VerifyAll()
def summary(request, deployment_id): context = _default_context(request, deployment_id) resp = stacky_server.do_summary(request) resp['url_prefix'] = reverse('timings', args=[deployment_id]) + '?name=' resp['subtitle'] = 'Summary' context.update(resp) return render_to_response('stacky.html', context)