1# Copyright 2014 The Chromium Authors. All rights reserved. 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5import os 6import unittest 7 8from telemetry import value 9from telemetry.page import page_set 10from telemetry.value import skip 11 12 13class TestBase(unittest.TestCase): 14 def setUp(self): 15 self.page_set = page_set.PageSet(file_path=os.path.dirname(__file__)) 16 self.page_set.AddPageWithDefaultRunNavigate("http://www.bar.com/") 17 18 @property 19 def pages(self): 20 return self.page_set.pages 21 22class ValueTest(TestBase): 23 def testBuildbotAndRepresentativeValue(self): 24 v = skip.SkipValue(self.pages[0], 'page skipped for testing reason') 25 self.assertIsNone(v.GetBuildbotValue()) 26 self.assertIsNone(v.GetBuildbotDataType( 27 value.COMPUTED_PER_PAGE_SUMMARY_OUTPUT_CONTEXT)) 28 self.assertIsNone(v.GetChartAndTraceNameForPerPageResult()) 29 self.assertIsNone(v.GetRepresentativeNumber()) 30 self.assertIsNone(v.GetRepresentativeString()) 31 32 def testAsDict(self): 33 v = skip.SkipValue(self.pages[0], 'page skipped for testing reason') 34 d = v.AsDictWithoutBaseClassEntries() 35 self.assertEquals(d['reason'], 'page skipped for testing reason') 36 37 def testFromDict(self): 38 d = { 39 'type': 'skip', 40 'name': 'skip', 41 'units': '', 42 'reason': 'page skipped for testing reason' 43 } 44 v = value.Value.FromDict(d, {}) 45 self.assertTrue(isinstance(v, skip.SkipValue)) 46 self.assertEquals(v.reason, 'page skipped for testing reason') 47