Skip to content
This repository was archived by the owner on Sep 17, 2025. It is now read-only.

Commit 4d82d62

Browse files
authored
Clean up stackdriver stats tests (#307)
1 parent c7e4612 commit 4d82d62

1 file changed

Lines changed: 59 additions & 58 deletions

File tree

tests/unit/stats/exporter/test_stackdriver_stats.py

Lines changed: 59 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
from opencensus.tags import tag_map as tag_map_module
2626
from opencensus.tags import tag_value as tag_value_module
2727

28-
2928
MiB = 1 << 20
3029
FRONTEND_KEY = tag_key_module.TagKey("my.org/keys/frontend")
3130
FRONTEND_KEY_FLOAT = tag_key_module.TagKey("my.org/keys/frontend-FLOAT")
@@ -47,6 +46,15 @@
4746
VIDEO_SIZE_MEASURE,
4847
VIDEO_SIZE_DISTRIBUTION)
4948

49+
50+
class _Client(object):
51+
def __init__(self, project=None):
52+
if project is None:
53+
project = 'PROJECT'
54+
55+
self.project = project
56+
57+
5058
class TestOptions(unittest.TestCase):
5159

5260
def test_options_blank(self):
@@ -62,7 +70,7 @@ def test_options_parameters(self):
6270

6371
def test_default_monitoring_labels_blank(self):
6472
option = stackdriver.Options()
65-
self.assertEqual(option.default_monitoring_labels, None)
73+
self.assertIsNone(option.default_monitoring_labels)
6674

6775
def test_default_monitoring_labels(self):
6876
default_labels = {'key1':'value1'}
@@ -75,7 +83,7 @@ class TestStackdriverStatsExporter(unittest.TestCase):
7583
def test_constructor(self):
7684
exporter = stackdriver.StackdriverStatsExporter()
7785

78-
self.assertEqual(exporter.client, None)
86+
self.assertIsNone(exporter.client)
7987

8088
def test_constructor_param(self):
8189
project_id = 1
@@ -91,7 +99,11 @@ def test_blank_project(self):
9199
self.assertRaises(Exception, stackdriver.new_stats_exporter, stackdriver.Options(project_id=""))
92100

93101
def test_not_blank_project(self):
94-
exporter_created = stackdriver.new_stats_exporter(stackdriver.Options(project_id=1))
102+
patch_client = mock.patch(
103+
'opencensus.stats.exporters.stackdriver_exporter.monitoring_v3.MetricServiceClient', _Client)
104+
105+
with patch_client:
106+
exporter_created = stackdriver.new_stats_exporter(stackdriver.Options(project_id=1))
95107

96108
self.assertIsInstance(exporter_created, stackdriver.StackdriverStatsExporter)
97109

@@ -119,7 +131,12 @@ def test_remove_invalid_chars(self):
119131

120132
def test_singleton_with_params(self):
121133
default_labels = {'key1':'value1'}
122-
exporter_created = stackdriver.new_stats_exporter(stackdriver.Options(project_id=1,default_monitoring_labels=default_labels))
134+
patch_client = mock.patch(
135+
'opencensus.stats.exporters.stackdriver_exporter.monitoring_v3.MetricServiceClient',
136+
_Client)
137+
138+
with patch_client:
139+
exporter_created = stackdriver.new_stats_exporter(stackdriver.Options(project_id=1,default_monitoring_labels=default_labels))
123140

124141
self.assertEqual(exporter_created.default_labels, default_labels)
125142

@@ -146,20 +163,14 @@ def test_namespacedviews(self):
146163

147164
self.assertEqual(expected_view_name_namespaced, view_name_namespaced)
148165

149-
def test_get_task_value(self):
150-
task_value = stackdriver.get_task_value()
151-
152-
self.assertNotEqual(task_value, "")
153-
154166
def test_on_register_view(self):
155167
client = mock.Mock()
156168
view_none = None
157169
option = stackdriver.Options(project_id="project-test")
158170
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
159171
exporter.on_register_view(VIDEO_SIZE_VIEW)
160-
self.assertTrue(True)
161172
exporter.on_register_view(view_none)
162-
self.assertTrue(True)
173+
self.assertTrue(client.create_metric_descriptor.called)
163174

164175
def test_emit(self):
165176
client = mock.Mock()
@@ -172,39 +183,53 @@ def test_emit(self):
172183
option = stackdriver.Options(project_id="project-test")
173184
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
174185
exporter.emit(view_data)
175-
self.assertTrue(True)
176186
exporter.emit(None)
177-
self.assertTrue(True)
187+
self.assertTrue(client.create_time_series.called)
178188

179-
def test_export(self):
189+
def test_export_no_data(self):
180190
client = mock.Mock()
191+
transport = mock.Mock()
192+
option = stackdriver.Options(project_id="project-test")
193+
exporter = stackdriver.StackdriverStatsExporter(
194+
options=option, client=client, transport=transport)
195+
exporter.export(None)
196+
self.assertFalse(exporter.transport.export.called)
197+
198+
def test_export_with_data(self):
199+
client = mock.Mock()
200+
transport = mock.Mock()
181201
start_time = datetime.utcnow()
182202
end_time = datetime.utcnow()
183203
v_data = view_data_module.ViewData(view=VIDEO_SIZE_VIEW,
184-
start_time=start_time,
185-
end_time=end_time)
204+
start_time=start_time,
205+
end_time=end_time)
186206
view_data = [v_data]
187207
option = stackdriver.Options(project_id="project-test")
188-
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
208+
exporter = stackdriver.StackdriverStatsExporter(
209+
options=option, client=client, transport=transport)
189210
exporter.export(view_data)
190-
self.assertTrue(True)
191-
exporter.export(None)
192-
self.assertTrue(True)
211+
self.assertTrue(exporter.transport.export.called)
212+
213+
def test_handle_upload_no_data(self):
214+
client = mock.Mock()
215+
option = stackdriver.Options(project_id="project-test")
216+
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
217+
exporter.handle_upload(None)
218+
self.assertFalse(client.create_time_series.called)
193219

194-
def test_handle_upload(self):
220+
def test_handle_upload_with_data(self):
195221
client = mock.Mock()
196222
start_time = datetime.utcnow()
197223
end_time = datetime.utcnow()
198224
v_data = view_data_module.ViewData(view=VIDEO_SIZE_VIEW,
199-
start_time=start_time,
200-
end_time=end_time)
225+
start_time=start_time,
226+
end_time=end_time)
201227
view_data = [v_data]
202228
option = stackdriver.Options(project_id="project-test")
203-
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
229+
exporter = stackdriver.StackdriverStatsExporter(options=option,
230+
client=client)
204231
exporter.handle_upload(view_data)
205-
self.assertTrue(True)
206-
exporter.handle_upload(None)
207-
self.assertTrue(True)
232+
self.assertTrue(client.create_time_series.called)
208233

209234
def test_make_request(self):
210235
client = mock.Mock()
@@ -220,10 +245,8 @@ def test_make_request(self):
220245
self.assertEqual(len(requests), 1)
221246

222247
def test_stackdriver_register_exporter(self):
223-
view = mock.Mock()
224248
stats = stats_module.Stats()
225249
view_manager = stats.view_manager
226-
stats_recorder = stats.stats_recorder
227250

228251
exporter = mock.Mock()
229252
if len(view_manager.measure_to_view_map.exporters) > 0:
@@ -236,8 +259,6 @@ def test_stackdriver_register_exporter(self):
236259

237260
def test_create_timeseries(self):
238261
client = mock.Mock()
239-
start_time = datetime.utcnow()
240-
end_time = datetime.utcnow()
241262

242263
option = stackdriver.Options(project_id="project-test", resource="global")
243264
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
@@ -270,8 +291,6 @@ def test_create_timeseries(self):
270291

271292
def test_create_timeseries_str_tagvalue(self):
272293
client = mock.Mock()
273-
start_time = datetime.utcnow()
274-
end_time = datetime.utcnow()
275294

276295
option = stackdriver.Options(project_id="project-test", resource="global")
277296
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
@@ -313,8 +332,6 @@ def test_create_timeseries_str_tagvalue(self):
313332

314333
def test_create_timeseries_last_value_float_tagvalue(self):
315334
client = mock.Mock()
316-
start_time = datetime.utcnow()
317-
end_time = datetime.utcnow()
318335

319336
option = stackdriver.Options(project_id="project-test", resource="global")
320337
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
@@ -356,8 +373,6 @@ def test_create_timeseries_last_value_float_tagvalue(self):
356373

357374
def test_create_timeseries_float_tagvalue(self):
358375
client = mock.Mock()
359-
start_time = datetime.utcnow()
360-
end_time = datetime.utcnow()
361376

362377
option = stackdriver.Options(project_id="project-test", resource="global")
363378
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
@@ -399,8 +414,6 @@ def test_create_timeseries_float_tagvalue(self):
399414

400415
def test_create_metric_descriptor_count(self):
401416
client = mock.Mock()
402-
start_time = datetime.utcnow()
403-
end_time = datetime.utcnow()
404417
option = stackdriver.Options(project_id="project-test", metric_prefix="teste")
405418
view_name_count= "view-count"
406419
agg_count = aggregation_module.CountAggregation(count=2)
@@ -411,12 +424,10 @@ def test_create_metric_descriptor_count(self):
411424
agg_count)
412425
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
413426
desc = exporter.create_metric_descriptor(view_count)
414-
self.assertNotEqual(desc, None)
427+
self.assertIsNotNone(desc)
415428

416429
def test_create_metric_descriptor_sum_int(self):
417430
client = mock.Mock()
418-
start_time = datetime.utcnow()
419-
end_time = datetime.utcnow()
420431
option = stackdriver.Options(project_id="project-test", metric_prefix="teste")
421432

422433
view_name_sum_int= "view-sum-int"
@@ -428,12 +439,10 @@ def test_create_metric_descriptor_sum_int(self):
428439
agg_sum)
429440
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
430441
desc = exporter.create_metric_descriptor(view_sum_int)
431-
self.assertNotEqual(desc, None)
442+
self.assertIsNotNone(desc)
432443

433444
def test_create_metric_descriptor_sum_float(self):
434445
client = mock.Mock()
435-
start_time = datetime.utcnow()
436-
end_time = datetime.utcnow()
437446
option = stackdriver.Options(project_id="project-test", metric_prefix="teste")
438447

439448
view_name_sum_float= "view-sum-float"
@@ -445,22 +454,18 @@ def test_create_metric_descriptor_sum_float(self):
445454
agg_sum)
446455
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
447456
desc = exporter.create_metric_descriptor(view_sum_float)
448-
self.assertNotEqual(desc, None)
457+
self.assertIsNotNone(desc)
449458

450459
def test_create_metric_descriptor(self):
451460
client = mock.Mock()
452-
start_time = datetime.utcnow()
453-
end_time = datetime.utcnow()
454461
option = stackdriver.Options(project_id="project-test", metric_prefix="teste")
455462
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
456463
desc = exporter.create_metric_descriptor(VIDEO_SIZE_VIEW)
457-
self.assertNotEqual(desc, None)
464+
self.assertIsNotNone(desc)
458465

459466

460467
def test_create_metric_descriptor_last_value_int(self):
461468
client = mock.Mock()
462-
start_time = datetime.utcnow()
463-
end_time = datetime.utcnow()
464469
option = stackdriver.Options(project_id="project-test", metric_prefix="teste")
465470

466471
view_name_base= "view-base"
@@ -472,12 +477,10 @@ def test_create_metric_descriptor_last_value_int(self):
472477
agg_base)
473478
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
474479
desc = exporter.create_metric_descriptor(view_base)
475-
self.assertNotEqual(desc, None)
480+
self.assertIsNotNone(desc)
476481

477482
def test_create_metric_descriptor_last_value_float(self):
478483
client = mock.Mock()
479-
start_time = datetime.utcnow()
480-
end_time = datetime.utcnow()
481484
option = stackdriver.Options(project_id="project-test", metric_prefix="teste")
482485

483486
view_name_base= "view-base"
@@ -489,12 +492,10 @@ def test_create_metric_descriptor_last_value_float(self):
489492
agg_base)
490493
exporter = stackdriver.StackdriverStatsExporter(options=option, client=client)
491494
desc = exporter.create_metric_descriptor(view_base)
492-
self.assertNotEqual(desc, None)
495+
self.assertIsNotNone(desc)
493496

494497
def test_create_metric_descriptor_base(self):
495498
client = mock.Mock()
496-
start_time = datetime.utcnow()
497-
end_time = datetime.utcnow()
498499
option = stackdriver.Options(project_id="project-test", metric_prefix="teste")
499500

500501
view_name_base= "view-base"

0 commit comments

Comments
 (0)