experiment_factory_unittest.py revision f81680c018729fd4499e1e200d04b48c4b90127c
1#!/usr/bin/python 2 3# Copyright 2011 Google Inc. All Rights Reserved. 4 5import StringIO 6import unittest 7 8from utils.file_utils import FileUtils 9 10from experiment_factory import ExperimentFactory 11from experiment_file import ExperimentFile 12import test_flag 13 14EXPERIMENT_FILE_1 = """ 15 board: x86-alex 16 remote: chromeos-alex3 17 18 benchmark: PageCycler { 19 iterations: 3 20 } 21 22 image1 { 23 chromeos_image: /usr/local/google/cros_image1.bin 24 } 25 26 image2 { 27 chromeos_image: /usr/local/google/cros_image2.bin 28 } 29 """ 30 31 32class ExperimentFactoryTest(unittest.TestCase): 33 def testLoadExperimentFile1(self): 34 experiment_file = ExperimentFile(StringIO.StringIO(EXPERIMENT_FILE_1)) 35 experiment = ExperimentFactory().GetExperiment(experiment_file, 36 working_directory="", 37 log_dir="") 38 self.assertEqual(experiment.remote, ["chromeos-alex3"]) 39 40 self.assertEqual(len(experiment.benchmarks), 1) 41 self.assertEqual(experiment.benchmarks[0].name, "PageCycler") 42 self.assertEqual(experiment.benchmarks[0].autotest_name, "PageCycler") 43 self.assertEqual(experiment.benchmarks[0].iterations, 3) 44 45 self.assertEqual(len(experiment.labels), 2) 46 self.assertEqual(experiment.labels[0].chromeos_image, 47 "/usr/local/google/cros_image1.bin") 48 self.assertEqual(experiment.labels[0].board, 49 "x86-alex") 50 51 52if __name__ == "__main__": 53 FileUtils.Configure(True) 54 test_flag.SetTestMode(True) 55 unittest.main() 56