#11 Add basic unit tests for module generator
Merged 7 years ago by dhodovsk. Opened 7 years ago by dhodovsk.
modularity/ dhodovsk/modularity-tools rpm2module-tests  into  master

@@ -0,0 +1,52 @@ 

+ import unittest

+ import os

+ from module_generator import ModuleGenerator

+ from modularity.cli import CLIRpm2Module

+ 

+ 

+ class ModuleGeneratorTest(unittest.TestCase):

+ 

+     def setUp(self):

+         cli = CLIRpm2Module(["test"])

+         self.mg = ModuleGenerator(cli)

+ 

+     def test_save_module_md(self):

+         self.mg.args.pkgs = 'package'

+         self.mg._save_module_md()

+ 

+         assert os.path.exists('package.yaml')

+ 

+     def test_get_pkg_info(self):

+         self.mg.args.pkgs = 'definitelynotavalidnameofapackage'

+ 

+         with self.assertRaises(ValueError) as context:

+             self.mg._get_pkg_info()

+ 

+         self.assertTrue('No package found in repo' in context.exception)

+ 

+         self.mg.args.pkgs = 'bash'

+         self.mg._get_pkg_info()

+ 

+         self.assertEqual(self.mg.pkg.summary, 'The GNU Bourne Again shell')

+ 

+     def test_update_module_md(self):

+         self.mg.args.pkgs = 'bash'

+         self.mg._get_pkg_info()

+ 

+         self.mg._update_module_md()

+         self.assertEqual(self.mg.mmd.summary, 'The GNU Bourne Again shell')

+         self.assertEqual(len(self.mg.mmd.module_licenses), 1)

+         self.assertEqual(len(self.mg.mmd.components.rpms), 0)

+ 

+     def test_get_dependencies(self):

+         self.mg.args.pkgs = 'bash'

+         self.mg._get_dependencies()

+ 

+         self.assertGreater(self.mg.build_deps, 0)

+         self.assertGreater(self.mg.run_deps, 0)

+ 

+         if os.path.exists(self.mg.build_deps_file):

+             os.remove(self.mg.build_deps_file)

+ 

+         if os.path.exists(self.mg.run_deps_file):

+             os.remove(self.mg.run_deps_file)

no initial comment

Pull-Request has been merged by dhodovsk

7 years ago
Metadata