diff options
Diffstat (limited to 'BaseTools/Tests')
-rw-r--r-- | BaseTools/Tests/CToolsTests.py | 35 | ||||
-rw-r--r-- | BaseTools/Tests/CheckPythonSyntax.py | 74 | ||||
-rw-r--r-- | BaseTools/Tests/GNUmakefile | 21 | ||||
-rw-r--r-- | BaseTools/Tests/PythonToolsTests.py | 32 | ||||
-rw-r--r-- | BaseTools/Tests/RunTests.py | 40 | ||||
-rw-r--r-- | BaseTools/Tests/TestTools.py | 172 | ||||
-rw-r--r-- | BaseTools/Tests/TianoCompress.py | 74 |
7 files changed, 0 insertions, 448 deletions
diff --git a/BaseTools/Tests/CToolsTests.py b/BaseTools/Tests/CToolsTests.py deleted file mode 100644 index 67681ea77f..0000000000 --- a/BaseTools/Tests/CToolsTests.py +++ /dev/null @@ -1,35 +0,0 @@ -## @file -# Unit tests for C based BaseTools -# -# Copyright (c) 2008, Intel Corporation. All rights reserved.<BR> -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -## -# Import Modules -# -import os -import sys -import unittest - -import TianoCompress -modules = ( - TianoCompress, - ) - - -def TheTestSuite(): - suites = map(lambda module: module.TheTestSuite(), modules) - return unittest.TestSuite(suites) - -if __name__ == '__main__': - allTests = TheTestSuite() - unittest.TextTestRunner().run(allTests) - diff --git a/BaseTools/Tests/CheckPythonSyntax.py b/BaseTools/Tests/CheckPythonSyntax.py deleted file mode 100644 index e27c341c0c..0000000000 --- a/BaseTools/Tests/CheckPythonSyntax.py +++ /dev/null @@ -1,74 +0,0 @@ -## @file -# Unit tests for checking syntax of Python source code -# -# Copyright (c) 2009, Intel Corporation. All rights reserved.<BR> -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -## -# Import Modules -# -import os -import unittest -import py_compile - -import TestTools - -class Tests(TestTools.BaseToolsTest): - - def setUp(self): - TestTools.BaseToolsTest.setUp(self) - - def SingleFileTest(self, filename): - try: - py_compile.compile(filename, doraise=True) - except Exception, e: - self.fail('syntax error: %s, Error is %s' % (filename, str(e))) - -def MakePythonSyntaxCheckTests(): - def GetAllPythonSourceFiles(): - pythonSourceFiles = [] - for (root, dirs, files) in os.walk(TestTools.PythonSourceDir): - for filename in files: - if filename.lower().endswith('.py'): - pythonSourceFiles.append( - os.path.join(root, filename) - ) - return pythonSourceFiles - - def MakeTestName(filename): - assert filename.lower().endswith('.py') - name = filename[:-3] - name = name.replace(TestTools.PythonSourceDir, '') - name = name.replace(os.path.sep, '_') - return 'test' + name - - def MakeNewTest(filename): - test = MakeTestName(filename) - newmethod = lambda self: self.SingleFileTest(filename) - setattr( - Tests, - test, - newmethod - ) - - for filename in GetAllPythonSourceFiles(): - MakeNewTest(filename) - -MakePythonSyntaxCheckTests() -del MakePythonSyntaxCheckTests - -TheTestSuite = TestTools.MakeTheTestSuite(locals()) - -if __name__ == '__main__': - allTests = TheTestSuite() - unittest.TextTestRunner().run(allTests) - - diff --git a/BaseTools/Tests/GNUmakefile b/BaseTools/Tests/GNUmakefile deleted file mode 100644 index c63c2166c3..0000000000 --- a/BaseTools/Tests/GNUmakefile +++ /dev/null @@ -1,21 +0,0 @@ -## @file
-# Windows makefile for 'Tests' module build.
-#
-# Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>
-# This program and the accompanying materials
-# are licensed and made available under the terms and conditions of the BSD License
-# which accompanies this distribution. The full text of the license may be found at
-# http://opensource.org/licenses/bsd-license.php
-#
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#
-
-all: test
-
-test:
- @python RunTests.py
-
-clean:
- find . -name '*.pyc' -exec rm '{}' ';'
-
diff --git a/BaseTools/Tests/PythonToolsTests.py b/BaseTools/Tests/PythonToolsTests.py deleted file mode 100644 index 7db5855e0b..0000000000 --- a/BaseTools/Tests/PythonToolsTests.py +++ /dev/null @@ -1,32 +0,0 @@ -## @file -# Unit tests for Python based BaseTools -# -# Copyright (c) 2008, Intel Corporation. All rights reserved.<BR> -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -## -# Import Modules -# -import os -import sys -import unittest - - -def TheTestSuite(): - suites = [] - import CheckPythonSyntax - suites.append(CheckPythonSyntax.TheTestSuite()) - return unittest.TestSuite(suites) - -if __name__ == '__main__': - allTests = TheTestSuite() - unittest.TextTestRunner().run(allTests) - diff --git a/BaseTools/Tests/RunTests.py b/BaseTools/Tests/RunTests.py deleted file mode 100644 index 193bc60625..0000000000 --- a/BaseTools/Tests/RunTests.py +++ /dev/null @@ -1,40 +0,0 @@ -## @file -# Unit tests for BaseTools utilities -# -# Copyright (c) 2008, Intel Corporation. All rights reserved.<BR> -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -## -# Import Modules -# -import os -import sys -import unittest - -import TestTools - -sys.path.append(TestTools.PythonSourceDir) - -def GetCTestSuite(): - import CToolsTests - return CToolsTests.TheTestSuite() - -def GetPythonTestSuite(): - import PythonToolsTests - return PythonToolsTests.TheTestSuite() - -def GetAllTestsSuite(): - return unittest.TestSuite([GetCTestSuite(), GetPythonTestSuite()]) - -if __name__ == '__main__': - allTests = GetAllTestsSuite() - unittest.TextTestRunner(verbosity=2).run(allTests) - diff --git a/BaseTools/Tests/TestTools.py b/BaseTools/Tests/TestTools.py deleted file mode 100644 index 4a70e92bcd..0000000000 --- a/BaseTools/Tests/TestTools.py +++ /dev/null @@ -1,172 +0,0 @@ -## @file -# Utility functions and classes for BaseTools unit tests -# -# Copyright (c) 2008, Intel Corporation. All rights reserved.<BR> -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -## -# Import Modules -# -import base64 -import os -import os.path -import random -import shutil -import subprocess -import sys -import types -import unittest - -TestsDir = os.path.realpath(os.path.split(sys.argv[0])[0]) -BaseToolsDir = os.path.realpath(os.path.join(TestsDir, '..')) -CSourceDir = os.path.join(BaseToolsDir, 'Source', 'C') -PythonSourceDir = os.path.join(BaseToolsDir, 'Source', 'Python') -TestTempDir = os.path.join(TestsDir, 'TestTempDir') - -def MakeTheTestSuite(localItems): - tests = [] - for name, item in localItems.iteritems(): - if isinstance(item, types.TypeType): - if issubclass(item, unittest.TestCase): - tests.append(unittest.TestLoader().loadTestsFromTestCase(item)) - elif issubclass(item, unittest.TestSuite): - tests.append(item()) - return lambda: unittest.TestSuite(tests) - -def GetBaseToolsPath(): - if sys.platform in ('win32', 'win64'): - return os.path.join(BaseToolsDir, 'Bin', sys.platform.title()) - elif sys.platform in ('cygwin'): - uname = os.popen('uname -sm').read().strip() - for char in (' ', '/'): - uname = uname.replace(char, '-') - return os.path.join(BaseToolsDir, 'Bin', uname) - else: - uname = os.popen('uname -sm').read().strip() - for char in (' ', '/'): - uname = uname.replace(char, '-') - return os.path.join(BaseToolsDir, 'BinWrappers', uname) - -BaseToolsBinPath = GetBaseToolsPath() - -class BaseToolsTest(unittest.TestCase): - - def cleanOutDir(self, dir): - for dirItem in os.listdir(dir): - if dirItem in ('.', '..'): continue - dirItem = os.path.join(dir, dirItem) - self.RemoveFileOrDir(dirItem) - - def CleanUpTmpDir(self): - if os.path.exists(self.testDir): - self.cleanOutDir(self.testDir) - - def HandleTreeDeleteError(self, function, path, excinfo): - os.chmod(path, stat.S_IWRITE) - function(path) - - def RemoveDir(self, dir): - shutil.rmtree(dir, False, self.HandleTreeDeleteError) - - def RemoveFileOrDir(self, path): - if not os.path.exists(path): - return - elif os.path.isdir(path): - self.RemoveDir(path) - else: - os.remove(path) - - def DisplayBinaryData(self, description, data): - print description, '(base64 encoded):' - b64data = base64.b64encode(data) - print b64data - - def DisplayFile(self, fileName): - sys.stdout.write(self.ReadTmpFile(fileName)) - sys.stdout.flush() - - def RunTool(self, *args, **kwd): - if 'toolName' in kwd: toolName = kwd['toolName'] - else: toolName = None - if 'logFile' in kwd: logFile = kwd['logFile'] - else: logFile = None - - if toolName is None: toolName = self.toolName - bin = os.path.join(self.baseToolsBins, toolName) - if logFile is not None: - logFile = open(os.path.join(self.testDir, logFile), 'w') - popenOut = logFile - else: - popenOut = subprocess.PIPE - - args = [toolName] + list(args) - - Proc = subprocess.Popen( - args, executable=bin, - stdout=popenOut, stderr=subprocess.STDOUT - ) - - if logFile is None: - Proc.stdout.read() - - return Proc.wait() - - def GetTmpFilePath(self, fileName): - return os.path.join(self.testDir, fileName) - - def OpenTmpFile(self, fileName, mode = 'r'): - return open(os.path.join(self.testDir, fileName), mode) - - def ReadTmpFile(self, fileName): - f = open(self.GetTmpFilePath(fileName), 'r') - data = f.read() - f.close() - return data - - def WriteTmpFile(self, fileName, data): - f = open(self.GetTmpFilePath(fileName), 'w') - f.write(data) - f.close() - - def GenRandomFileData(self, fileName, minlen = None, maxlen = None): - if maxlen is None: maxlen = minlen - f = self.OpenTmpFile(fileName, 'w') - f.write(self.GetRandomString(minlen, maxlen)) - f.close() - - def GetRandomString(self, minlen = None, maxlen = None): - if minlen is None: minlen = 1024 - if maxlen is None: maxlen = minlen - return ''.join( - [chr(random.randint(0,255)) - for x in xrange(random.randint(minlen, maxlen)) - ]) - - def setUp(self): - self.savedEnvPath = os.environ['PATH'] - self.savedSysPath = sys.path[:] - - self.baseToolsBins = BaseToolsBinPath - os.environ['PATH'] = \ - os.path.pathsep.join((os.environ['PATH'], self.baseToolsBins)) - - self.testDir = TestTempDir - if not os.path.exists(self.testDir): - os.mkdir(self.testDir) - else: - self.cleanOutDir(self.testDir) - - def tearDown(self): - self.RemoveFileOrDir(self.testDir) - - os.environ['PATH'] = self.savedEnvPath - sys.path = self.savedSysPath - diff --git a/BaseTools/Tests/TianoCompress.py b/BaseTools/Tests/TianoCompress.py deleted file mode 100644 index 01cd975048..0000000000 --- a/BaseTools/Tests/TianoCompress.py +++ /dev/null @@ -1,74 +0,0 @@ -## @file -# Unit tests for TianoCompress utility -# -# Copyright (c) 2008, Intel Corporation. All rights reserved.<BR> -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -## -# Import Modules -# -import os -import random -import sys -import unittest - -import TestTools - -class Tests(TestTools.BaseToolsTest): - - def setUp(self): - TestTools.BaseToolsTest.setUp(self) - self.toolName = 'TianoCompress' - - def testHelp(self): - result = self.RunTool('--help', logFile='help') - #self.DisplayFile('help') - self.assertTrue(result == 0) - - def compressionTestCycle(self, data): - path = self.GetTmpFilePath('input') - self.WriteTmpFile('input', data) - result = self.RunTool( - '-e', - '-o', self.GetTmpFilePath('output1'), - self.GetTmpFilePath('input') - ) - self.assertTrue(result == 0) - result = self.RunTool( - '-d', - '-o', self.GetTmpFilePath('output2'), - self.GetTmpFilePath('output1') - ) - self.assertTrue(result == 0) - start = self.ReadTmpFile('input') - finish = self.ReadTmpFile('output2') - startEqualsFinish = start == finish - if not startEqualsFinish: - print - print 'Original data did not match decompress(compress(data))' - self.DisplayBinaryData('original data', start) - self.DisplayBinaryData('after compression', self.ReadTmpFile('output1')) - self.DisplayBinaryData('after decomression', finish) - self.assertTrue(startEqualsFinish) - - def testRandomDataCycles(self): - for i in range(8): - data = self.GetRandomString(1024, 2048) - self.compressionTestCycle(data) - self.CleanUpTmpDir() - -TheTestSuite = TestTools.MakeTheTestSuite(locals()) - -if __name__ == '__main__': - allTests = TheTestSuite() - unittest.TextTestRunner().run(allTests) - - |