Skip to content

Commit

Permalink
Added more unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Myoldmopar committed Nov 24, 2018
1 parent da9f2fa commit bb2b157
Show file tree
Hide file tree
Showing 4 changed files with 137 additions and 0 deletions.
2 changes: 2 additions & 0 deletions epregressions/builds/makefile.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ def set_build_directory(self, build_directory):
self.source_directory = 'unknown - invalid build directory?'
return
cmake_cache_file = os.path.join(self.build_directory, 'CMakeCache.txt')
if not os.path.exists(cmake_cache_file):
raise Exception('Could not find cache file in build directory')
with open(cmake_cache_file, 'r') as f_cache:
for this_line in f_cache.readlines():
if 'CMAKE_HOME_DIRECTORY:INTERNAL=' in this_line:
Expand Down
38 changes: 38 additions & 0 deletions epregressions/tests/builds/test_install.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
import tempfile
import unittest

from epregressions.builds.install import EPlusInstallDirectory


class TestBaseWorkflowMethods(unittest.TestCase):

def setUp(self):
self.build = EPlusInstallDirectory()
self.run_dir = tempfile.mkdtemp()

def test_set_build_directory_does_not_exist(self):
self.build.set_build_directory('hello')
self.assertIn('unknown', self.build.source_directory)

def test_set_build_directory_does_exist(self):
self.build.set_build_directory(self.run_dir)
self.assertEqual(self.run_dir, self.build.source_directory)

def test_verify_before_setting_build_directory(self):
with self.assertRaises(Exception):
self.build.verify()

def test_verify_but_nothing_exists(self):
self.build.set_build_directory(self.run_dir)
check = self.build.verify()
self.assertIsInstance(check, list)
self.assertGreaterEqual(len(check), 4) # there should be some errors

def test_get_build_tree_before_setting_build_directory(self):
with self.assertRaises(Exception):
self.build.get_build_tree()

def test_get_build_tree(self):
self.build.set_build_directory(self.run_dir)
tree = self.build.get_build_tree()
self.assertIsInstance(tree, dict)
59 changes: 59 additions & 0 deletions epregressions/tests/builds/test_makefile.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
import os
import tempfile
import unittest

from epregressions.builds.makefile import CMakeCacheMakeFileBuildDirectory


class TestBaseWorkflowMethods(unittest.TestCase):

def setUp(self):
self.build = CMakeCacheMakeFileBuildDirectory()
self.run_dir = tempfile.mkdtemp()
self.dummy_source_dir = '/dummy/source/dir'

def set_cache_file(self):
with open(os.path.join(self.run_dir, 'CMakeCache.txt'), 'w') as f:
f.write('HEY\n')
f.write('CMAKE_HOME_DIRECTORY:INTERNAL=%s\n' % self.dummy_source_dir)
f.write('HEY AGAIN\n')

def test_set_build_directory_does_not_exist(self):
self.build.set_build_directory('hello')
self.assertIn('unknown', self.build.source_directory)

def test_set_build_directory_does_exist_but_no_cache(self):
with self.assertRaises(Exception):
self.build.set_build_directory(self.run_dir)

def test_set_build_directory_does_exist_but_empty_cache(self):
with open(os.path.join(self.run_dir, 'CMakeCache.txt'), 'w') as f:
f.write('\n')
with self.assertRaises(Exception):
self.build.set_build_directory(self.run_dir)

def test_set_build_directory_and_has_cache(self):
self.set_cache_file()
self.build.set_build_directory(self.run_dir)
self.assertEqual(self.dummy_source_dir, self.build.source_directory)

def test_verify_before_setting_build_directory(self):
with self.assertRaises(Exception):
self.build.verify()

def test_verify_but_nothing_exists(self):
self.set_cache_file()
self.build.set_build_directory(self.run_dir)
check = self.build.verify()
self.assertIsInstance(check, list)
self.assertGreaterEqual(len(check), 4) # there should be some errors

def test_get_build_tree_before_setting_build_directory(self):
with self.assertRaises(Exception):
self.build.get_build_tree()

def test_get_build_tree(self):
self.set_cache_file()
self.build.set_build_directory(self.run_dir)
tree = self.build.get_build_tree()
self.assertIsInstance(tree, dict)
38 changes: 38 additions & 0 deletions epregressions/tests/builds/test_visualstudio.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
import tempfile
import unittest

from epregressions.builds.install import EPlusInstallDirectory


class TestBaseWorkflowMethods(unittest.TestCase):

def setUp(self):
self.build = EPlusInstallDirectory()
self.run_dir = tempfile.mkdtemp()

def test_set_build_directory_does_not_exist(self):
self.build.set_build_directory('hello')
self.assertIn('unknown', self.build.source_directory)

def test_set_build_directory_does_exist(self):
self.build.set_build_directory(self.run_dir)
self.assertEqual(self.run_dir, self.build.source_directory)

def test_verify_before_setting_build_directory(self):
with self.assertRaises(Exception):
self.build.verify()

def test_verify_but_nothing_exists(self):
self.build.set_build_directory(self.run_dir)
check = self.build.verify()
self.assertIsInstance(check, list)
self.assertGreaterEqual(len(check), 4) # there should be some errors

def test_get_build_tree_before_setting_build_directory(self):
with self.assertRaises(Exception):
self.build.get_build_tree()

def test_get_build_tree(self):
self.build.set_build_directory(self.run_dir)
tree = self.build.get_build_tree()
self.assertIsInstance(tree, dict)

0 comments on commit bb2b157

Please sign in to comment.