41
41
self.assertTemplateUsed(res, 'admin/metering/index.html')
42
42
self.assertTemplateUsed(res, 'admin/metering/stats.html')
44
def test_report_page(self):
45
# getting report page with no api access
46
res = self.client.get(reverse('horizon:admin:metering:index') +
47
"?tab=ceilometer_overview__daily_report")
48
self.assertTemplateUsed(res, 'admin/metering/index.html')
49
self.assertTemplateUsed(res, 'admin/metering/daily.html')
44
51
def _verify_series(self, series, value, date, expected_names):
45
52
expected_names.reverse()
46
53
data = json.loads(series)
146
153
self._verify_series(res._container[0], 4.55, '2012-12-21T11:00:55',
156
@test.create_stubs({api.keystone: ('tenant_list',)})
157
def test_report(self):
158
meters = self.meters.list()
159
ceilometerclient = self.stub_ceilometerclient()
160
ceilometerclient.meters = self.mox.CreateMockAnything()
161
ceilometerclient.meters.list(None).AndReturn(meters)
163
api.keystone.tenant_list(IsA(http.HttpRequest),
167
.AndReturn([self.tenants.list(), False])
169
statistics = self.statistics.list()
170
ceilometerclient = self.stub_ceilometerclient()
171
ceilometerclient.statistics = self.mox.CreateMockAnything()
173
ceilometerclient.statistics.list(meter_name="instance",
174
period=IsA(int), q=IsA(list)).\
176
AndReturn(statistics)
177
ceilometerclient.statistics.list(meter_name="disk.read.bytes",
178
period=IsA(int), q=IsA(list)).\
180
AndReturn(statistics)
181
ceilometerclient.statistics.list(meter_name="disk.write.bytes",
182
period=IsA(int), q=IsA(list)).\
184
AndReturn(statistics)
188
# generate report with mock data
189
res = self.client.post(reverse('horizon:admin:metering:report'),
190
data={"date_options": "7"})
192
self.assertTemplateUsed(res, 'admin/metering/report.html')
150
195
class MeteringStatsTabTests(test.APITestCase):