1# Copyright (c) 2009 The Chromium OS 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 5__author__ = 'kobic@codeaurora.org (Kobi Cohen-Arazi)' 6 7import os 8import datetime 9import logging 10import re 11import utils 12from autotest_lib.client.bin import test 13from autotest_lib.client.common_lib import error 14 15class platform_Rootdev(test.test): 16 version = 1 17 18 def test_no_partition(self, inputDev, cpuType): 19 20 # arm should be /dev/mmcblk0, /dev/mmcblk1 etc 21 # x86 should be /dev/sda, /dev/sdb 22 23 if (cpuType == "arm"): 24 m = re.match("/dev/mmcblk[0-9]$", inputDev) 25 if not m: 26 raise error.TestFail( 27 "Rootdev test_no_partition arm failed != /dev/mmcblk[0-9]") 28 29 else: 30 m = re.match("/dev/sd[a-z]$", inputDev) 31 if not m: 32 raise error.TestFail( 33 "Rootdev test_no_partition x86 failed != /dev/sd[a-z]") 34 35 36 def run_once(self): 37 38 cpuType = utils.get_cpu_arch() 39 logging.debug("cpu type is %s" % cpuType) 40 41 # test return values 42 result = utils.system("rootdev -s") 43 logging.debug("Rootdev test res: %d", result) 44 if (result != 0): 45 raise error.TestFail("Rootdev failed") 46 result = utils.system("rootdev -s -d") 47 logging.debug("Rootdev test -d switch res: %d", result) 48 if (result != 0): 49 raise error.TestFail("Rootdev failed -s -d") 50 51 # test with -d Results should be without the partition device number 52 text = utils.system_output("rootdev -s -d 2>&1") 53 text = text.strip() 54 logging.debug("Rootdev -s -d txt is *%s*", text) 55 self.test_no_partition(text, cpuType) 56 57 58