def testAsDictBaseKeys(self):
        results = page_test_results.PageTestResults()
        d = json_output_formatter.ResultsAsDict(
            results, self._formatter.benchmark_metadata)

        self.assertEquals(d['format_version'], '0.2')
        self.assertEquals(d['benchmark_name'], 'benchmark_name')
예제 #2
0
    def testAsDictWithTwoPages(self):
        results = page_test_results.PageTestResults()
        results.WillRunPage(self._story_set[0])
        v0 = scalar.ScalarValue(
            results.current_page,
            'foo',
            'seconds',
            3,
            improvement_direction=improvement_direction.DOWN)
        results.AddValue(v0)
        results.DidRunPage(self._story_set[0])

        results.WillRunPage(self._story_set[1])
        v1 = scalar.ScalarValue(
            results.current_page,
            'bar',
            'seconds',
            4,
            improvement_direction=improvement_direction.DOWN)
        results.AddValue(v1)
        results.DidRunPage(self._story_set[1])

        d = json_output_formatter.ResultsAsDict(
            results, self._formatter.benchmark_metadata)

        self.assertTrue(_HasPage(d['pages'], self._story_set[0]))
        self.assertTrue(_HasPage(d['pages'], self._story_set[1]))
        self.assertTrue(_HasValueNamed(d['per_page_values'], 'foo'))
        self.assertTrue(_HasValueNamed(d['per_page_values'], 'bar'))
예제 #3
0
    def testAsDictWithTraceValue(self):
        tempdir = tempfile.mkdtemp()
        try:
            results = page_test_results.PageTestResults()
            results.WillRunPage(self._story_set[0])
            v0 = trace.TraceValue(results.current_page,
                                  trace_data.CreateTraceDataFromRawData([{
                                      'event':
                                      'test'
                                  }]),
                                  file_path=os.path.join(
                                      tempdir,
                                      'testAsDictWithTraceValue.html'))
            results.AddValue(v0)
            results.DidRunPage(self._story_set[0])
            results._SerializeTracesToDirPath()
            d = json_output_formatter.ResultsAsDict(
                results, self._formatter.benchmark_metadata)

            self.assertTrue(_HasPage(d['pages'], self._story_set[0]))
            self.assertTrue(_HasValueNamed(d['per_page_values'], 'trace'))
            self.assertEquals(len(d['files']), 1)
            output_trace_path = d['files'].values()[0]
            self.assertTrue(output_trace_path.startswith(tempdir))
            self.assertTrue(os.path.exists(output_trace_path))
        finally:
            shutil.rmtree(tempdir)
    def testAsDictWithSummaryValueOnly(self):
        results = page_test_results.PageTestResults()
        v = scalar.ScalarValue(None, 'baz', 'seconds', 5)
        results.AddSummaryValue(v)

        d = json_output_formatter.ResultsAsDict(
            results, self._formatter.benchmark_metadata)

        self.assertFalse(d['pages'])
        self.assertTrue(_HasValueNamed(d['summary_values'], 'baz'))
    def testAsDictWithOnePage(self):
        results = page_test_results.PageTestResults()
        results.WillRunPage(self._page_set[0])
        v0 = scalar.ScalarValue(results.current_page, 'foo', 'seconds', 3)
        results.AddValue(v0)
        results.DidRunPage(self._page_set[0])

        d = json_output_formatter.ResultsAsDict(
            results, self._formatter.benchmark_metadata)

        self.assertTrue(_HasPage(d['pages'], self._page_set[0]))
        self.assertTrue(_HasValueNamed(d['per_page_values'], 'foo'))