#!/usr/bin/python2 # Copyright 2017 The Chromium OS Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import mock import unittest import common import constants from autotest_lib.site_utils.admin_audit import verifiers from autotest_lib.server.cros.storage import storage_validate as storage # pylint: disable=missing-docstring class StubHost(object): """Simple host""" def is_up(self, **args): return True def run(self, **args): return '' class StubStorageStateValidator(object): def get_type(self): return "some_type" def get_state(self, run_badblocks=None): return storage.STORAGE_STATE_WARNING class VerifyDutStorageTests(unittest.TestCase): """Unit tests for ServoTypeLabel""" def test_state_is_none_till_run_verify(self): host = StubHost() verify = verifiers.VerifyDutStorage(host) self.assertEqual(verify.get_state(), None) @mock.patch('autotest_lib.server.cros.storage.' 'storage_validate.StorageStateValidator') def test_get_state_after_runverify(self, validator): validator.return_value = StubStorageStateValidator() host = StubHost() verify = verifiers.VerifyDutStorage(host) verify.verify(set_label=False) self.assertEqual(verify.get_state(), constants.HW_STATE_ACCEPTABLE) if __name__ == '__main__': unittest.main()