label.py revision 4467f004e7f0854963bec90daff1879fbd9d2fec
1#!/usr/bin/python 2 3# Copyright 2011 Google Inc. All Rights Reserved. 4 5"""The label of benchamrks.""" 6 7import os 8from utils.file_utils import FileUtils 9 10 11class Label(object): 12 def __init__(self, name, chromeos_image, chromeos_root, board, remote, 13 image_args): 14 # Expand ~ 15 chromeos_root = os.path.expanduser(chromeos_root) 16 chromeos_image = os.path.expanduser(chromeos_image) 17 18 self.name = name 19 self.chromeos_image = chromeos_image 20 self.board = board 21 self.remote = remote 22 self.image_args = image_args 23 24 if not chromeos_root: 25 chromeos_root = FileUtils().ChromeOSRootFromImage(chromeos_image) 26 if not chromeos_root: 27 raise Exception("No ChromeOS root given for label '%s' and could not " 28 "determine one from image path: '%s'." % 29 (name, chromeos_image)) 30 else: 31 chromeos_root = FileUtils().CanonicalizeChromeOSRoot(chromeos_root) 32 if not chromeos_root: 33 raise Exception("Invalid ChromeOS root given for label '%s': '%s'." 34 % (name, chromeos_root)) 35 36 self.chromeos_root = chromeos_root 37 38 39class MockLabel(object): 40 def __init__(self, name, chromeos_image, chromeos_root, board, remote, 41 image_args): 42 self.name = name 43 self.chromeos_image = chromeos_image 44 self.board = board 45 self.remote = remote 46 if not chromeos_root: 47 self.chromeos_root = "/tmp/chromeos_root" 48 else: 49 self.chromeos_root = chromeos_root 50 self.image_args = image_args 51