From 53fc4ba26640fd5aab0b7480068295e72c42d435 Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Tue, 23 Jun 2015 23:34:04 +0000 Subject: [PATCH] BaseTools/Tests: Always add BaseTools source to import path This allows unit tests to easily include BaseTools python modules. This is very useful for writing unit tests. Actually, previously, we would do this when RunTests.py was executed, so unit tests could easily import BaseTools modules, so long as they were executed via RunTests. This change allows running the unit test files individually which can be faster for developing the new unit test cases. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen Reviewed-by: Michael D Kinney Reviewed-by: Yingke Liu git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17691 6f19259b-4bc3-4df7-8a09-765794883524 --- BaseTools/Tests/RunTests.py | 2 -- BaseTools/Tests/TestTools.py | 9 ++++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/BaseTools/Tests/RunTests.py b/BaseTools/Tests/RunTests.py index e8ca2d055e..0dd65632d0 100644 --- a/BaseTools/Tests/RunTests.py +++ b/BaseTools/Tests/RunTests.py @@ -21,8 +21,6 @@ import unittest import TestTools -sys.path.append(TestTools.PythonSourceDir) - def GetCTestSuite(): import CToolsTests return CToolsTests.TheTestSuite() diff --git a/BaseTools/Tests/TestTools.py b/BaseTools/Tests/TestTools.py index ac009db1fa..27afd79f20 100644 --- a/BaseTools/Tests/TestTools.py +++ b/BaseTools/Tests/TestTools.py @@ -1,7 +1,7 @@ ## @file # Utility functions and classes for BaseTools unit tests # -# Copyright (c) 2008 - 2012, Intel Corporation. All rights reserved.
+# Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License @@ -31,6 +31,13 @@ CSourceDir = os.path.join(BaseToolsDir, 'Source', 'C') PythonSourceDir = os.path.join(BaseToolsDir, 'Source', 'Python') TestTempDir = os.path.join(TestsDir, 'TestTempDir') +if PythonSourceDir not in sys.path: + # + # Allow unit tests to import BaseTools python modules. This is very useful + # for writing unit tests. + # + sys.path.append(PythonSourceDir) + def MakeTheTestSuite(localItems): tests = [] for name, item in localItems.iteritems():