def testBenchmarkDescriptionPopulatedIfSet(self): ti = page_test_results.TelemetryInfo() ti.benchmark_name = 'benchmark' ti.benchmark_start_epoch = 123 ti.benchmark_descriptions = 'foo' ti_dict = ti.AsDict() self.assertIn(reserved_infos.BENCHMARK_DESCRIPTIONS.name, ti_dict) self.assertEqual(ti_dict[reserved_infos.BENCHMARK_DESCRIPTIONS.name], ['foo'])
def testTraceLocalPathWithoutLabel(self): ti = page_test_results.TelemetryInfo(output_dir='/tmp') story_set = story.StorySet(base_dir=os.path.dirname(__file__)) bar_story = page_module.Page("http://www.bar.com/", story_set, story_set.base_dir, name='http://www.bar.com/') story_set.AddStory(bar_story) ti.WillRunStory(bar_story, None) self.assertIn('www_bar_com', ti.trace_local_path) self.assertNotIn('custom_label', ti.trace_local_path)
def testGetDiagnostics(self): ti = page_test_results.TelemetryInfo() ti.benchmark_name = 'benchmark' ti.benchmark_start_epoch = 123 ti.benchmark_descriptions = 'foo' story_set = story.StorySet(base_dir=os.path.dirname(__file__)) foo_story = page_module.Page("http://www.foo.com/", story_set, story_set.base_dir, name='story1') story_set.AddStory(foo_story) ti.WillRunStory(foo_story, None) ti_diags = ti.diagnostics self.assertEqual(len(ti_diags), 5) self.assertIn(reserved_infos.BENCHMARKS.name, ti_diags) name_diag = ti_diags[reserved_infos.BENCHMARKS.name] self.assertIsInstance(name_diag, generic_set.GenericSet) self.assertIn(reserved_infos.BENCHMARK_START.name, ti_diags) start_diag = ti_diags[reserved_infos.BENCHMARK_START.name] self.assertIsInstance(start_diag, date_range.DateRange) self.assertIn(reserved_infos.BENCHMARK_DESCRIPTIONS.name, ti_diags) desc_diag = ti_diags[reserved_infos.BENCHMARK_DESCRIPTIONS.name] self.assertIsInstance(desc_diag, generic_set.GenericSet) self.assertIn(reserved_infos.STORIES.name, ti_diags) story_diag = ti_diags[reserved_infos.STORIES.name] self.assertIsInstance(story_diag, generic_set.GenericSet) self.assertEquals(story_diag.AsDict()['values'], ['story1']) # Now reset the story and assert that we update the diagnostics. story_set = story.StorySet(base_dir=os.path.dirname(__file__)) bar_story = page_module.Page("http://www.bar.com/", story_set, story_set.base_dir, name='story2') story_set.AddStory(bar_story) ti.WillRunStory(bar_story, None) # Assert everything is the same except for the story ti_diags = ti.diagnostics self.assertEqual(len(ti_diags), 5) self.assertIn(reserved_infos.BENCHMARKS.name, ti_diags) self.assertEqual(name_diag, ti_diags[reserved_infos.BENCHMARKS.name]) self.assertIn(reserved_infos.BENCHMARK_START.name, ti_diags) self.assertEqual(start_diag, ti_diags[reserved_infos.BENCHMARK_START.name]) self.assertIn(reserved_infos.BENCHMARK_DESCRIPTIONS.name, ti_diags) self.assertEqual(desc_diag, ti_diags[reserved_infos.BENCHMARK_DESCRIPTIONS.name]) self.assertIn(reserved_infos.STORIES.name, ti_diags) story_diag = ti_diags[reserved_infos.STORIES.name] self.assertIsInstance(story_diag, generic_set.GenericSet) self.assertEquals(story_diag.AsDict()['values'], ['story2'])
def testTraceLocalPathWithoutLabel(self): ti = page_test_results.TelemetryInfo( benchmark_name='benchmark', benchmark_description='foo', output_dir='/tmp') story_set = story.StorySet() bar_story = page_module.Page("http://www.bar.com/", story_set, name='http://www.bar.com/') story_set.AddStory(bar_story) ti.WillRunStory(bar_story, None) self.assertIn('www_bar_com', ti.trace_local_path) self.assertNotIn('custom_label', ti.trace_local_path)
def testWriteTelemetryInfo(self): info = page_test_results.TelemetryInfo() info.benchmark_name = 'example' info.benchmark_start_epoch = 0 self.agent.StartAgentTracing(self.config, timeout=10) self.agent.SetTelemetryInfo(info) self.agent.StopAgentTracing() trace = FakeTraceDataBuilder() self.agent.CollectAgentTraceData(trace) benchmarks = trace.GetTelemetryInfo()['benchmarks'] self.assertEqual(len(benchmarks), 1) self.assertEqual(benchmarks[0], 'example')
def testTraceLocalPathWithLabel(self): ti = page_test_results.TelemetryInfo(output_dir='/tmp') ti.benchmark_name = 'benchmark' ti.benchmark_start_epoch = 123 ti.benchmark_descriptions = 'foo' ti.label = 'custom_label' story_set = story.StorySet(base_dir=os.path.dirname(__file__)) bar_story = page_module.Page("http://www.bar.com/", story_set, story_set.base_dir, name='http://www.bar.com/') story_set.AddStory(bar_story) ti.WillRunStory(bar_story, None) self.assertIn('www_bar_com', ti.trace_local_path) self.assertIn('custom_label', ti.trace_local_path)
def testWriteTelemetryInfo(self): info = page_test_results.TelemetryInfo() info.benchmark_name = 'example' info.benchmark_start_epoch = 0 self.agent.StartAgentTracing(self.config, timeout=10) telemetry_tracing_agent.SetTelemetryInfo(info) self.agent.StopAgentTracing() with trace_data.TraceDataBuilder() as builder: self.agent.CollectAgentTraceData(builder) trace = builder.AsData().GetTraceFor(trace_data.TELEMETRY_PART) benchmarks = trace['metadata']['telemetry']['benchmarks'] self.assertEqual(len(benchmarks), 1) self.assertEqual(benchmarks[0], 'example')
def testWriteTelemetryInfo(self): info = page_test_results.TelemetryInfo() info.benchmark_start_epoch = 1 info._trace_start_us = 2000 info.benchmark_name = 'benchmark' info.benchmark_descriptions = 'desc' info._story_name = 'story' info._story_tags = ['tag1', 'tag2'] info._storyset_repeat_counter = 0 self.agent.StartAgentTracing(self.config, timeout=10) telemetry_tracing_agent.SetTelemetryInfo(info) self.agent.StopAgentTracing() with trace_data.TraceDataBuilder() as builder: self.agent.CollectAgentTraceData(builder) trace = builder.AsData().GetTraceFor(trace_data.TELEMETRY_PART) benchmarks = trace['metadata']['telemetry']['benchmarks'] self.assertEqual(len(benchmarks), 1) self.assertEqual(benchmarks[0], 'benchmark')
def testBenchmarkDescriptionNotPopulatedIfNotSet(self): ti = page_test_results.TelemetryInfo() ti.benchmark_name = 'benchmark' ti.benchmark_start_epoch = 123 ti_dict = ti.AsDict() self.assertNotIn(reserved_infos.BENCHMARK_DESCRIPTIONS.name, ti_dict)