From 5f74fa3511f0a545b63db142741320fc38126646 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Sun, 4 Mar 2012 02:18:27 +0100 Subject: selftest: Add base classes for Target/Environment and their management. --- selftest/tests/__init__.py | 2 +- selftest/tests/test_target.py | 60 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 selftest/tests/test_target.py (limited to 'selftest/tests') diff --git a/selftest/tests/__init__.py b/selftest/tests/__init__.py index 1e6b192d26..6eb4bb9bc6 100644 --- a/selftest/tests/__init__.py +++ b/selftest/tests/__init__.py @@ -23,7 +23,7 @@ import unittest def test_suite(): result = unittest.TestSuite() - names = ['socket_wrapper'] + names = ['socket_wrapper', 'target'] module_names = ['selftest.tests.test_' + name for name in names] loader = unittest.TestLoader() result.addTests(loader.loadTestsFromNames(module_names)) diff --git a/selftest/tests/test_target.py b/selftest/tests/test_target.py new file mode 100644 index 0000000000..9b3d37b270 --- /dev/null +++ b/selftest/tests/test_target.py @@ -0,0 +1,60 @@ +# test_target.py -- The tests for selftest target code +# Copyright (C) 2012 Jelmer Vernooij +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; version 3 +# of the License or (at your option) any later version of +# the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, +# MA 02110-1301, USA. + +"""Tests for selftest.target.""" + +from selftest.target import ( + EnvironmentManager, + NoneEnvironment, + Environment, + Target, + ) + +import os +import unittest + + +class DummyEnvironment(Environment): + + def __init__(self, name, prefix): + self.name = name + self.prefix = prefix + self.check_ret = True + self.log_ret = "" + + def check(self): + return self.check_ret + + def get_log(self): + return self.log_ret + + +class DummyTarget(Target): + + def get_target(self, name, prefix): + return DummyTarget(name, prefix) + + +class EnvironmentManagerTests(unittest.TestCase): + + def setUp(self): + self.mgr = EnvironmentManager(DummyTarget()) + + def test_none(self): + self.assertIs(NoneEnvironment, type(self.mgr.setup_env("none", "prefix"))) -- cgit