Ejemplo n.º 1
0
 def test_other_formats(self):
     """
     test various mix formats
     """
     self.assertLess(Version("v1.2.3"), Version("v2.3.4"))
     self.assertLess(Version("1"), Version("1.1"))
     self.assertLess(Version("1.2"), Version("1.2.1"))
     self.assertLess(Version("v01.9.0"), Version("v1.90.0"))
     self.assertGreater(Version("vv1.9.0"), Version("v01.9.0"))
Ejemplo n.º 2
0
 def test_nodigits(self):
     """
     test LooseVersion issue when one version does not have any digits
     """
     self.assertLess(Version("any"), Version("nodigits"))
     self.assertLess(Version("any"), Version("nodigits"))
     self.assertLess(Version("1.0.0"), Version("nodigits"))
     self.assertGreater(Version("nodigits"), Version("1.0.0"))
Ejemplo n.º 3
0
 def test_date_format(self):
     """
     date version format
     """
     self.assertLess(Version("16.04"), Version("18.04"))
     self.assertLess(Version("16.04"), Version("18.04"))
     self.assertGreater(Version("16.10"), Version("16.9"))
     self.assertLess(Version("01.10"), Version("10.9"))
Ejemplo n.º 4
0
 def test_xyz_format(self):
     """
     x.y.z version format
     """
     self.assertLess(Version("1.0.0"), Version("2.0.0"))
     self.assertGreater(Version("2.0.0"), Version("1.0.0"))
     self.assertLess(Version("1.2.3"), Version("5.1.0"))
     self.assertEqual(Version("1.2.3"), Version("1.2.3"))
Ejemplo n.º 5
0
 def test_no_digits(self):
     """
     ensure there are no exception inherited from LooseVersion
     """
     self.assertLess(Version("a"), Version("b"))
     self.assertEqual(Version("any"), Version("october"))
     self.assertGreater(Version("september"), Version("october"))
Ejemplo n.º 6
0
 def test_simple(self):
     """
     smoke test
     """
     self.assertLess(Version("1"), Version("2"))
     self.assertEqual(Version("1"), Version("1"))
     self.assertGreater(Version("2"), Version("1"))
Ejemplo n.º 7
0
    def test_package_simple(self):
        """
        smoke test
        """
        specfile = os.path.dirname(os.path.abspath(__file__)) + '/specfiles' + '/simple.yaml'
        test_pkg = SrcPackage(specfile, 'dummy_tag', 'empty_file')

        self.assertEqual(test_pkg.name, 'simple')
        self.assertEqual(test_pkg.version, Version('1.0.0'))
        self.assertEqual(test_pkg.maintainer, '*****@*****.**')
        self.assertEqual(test_pkg.url, 'ssh://[email protected]:7999/~mmpack.test/simple.git')
        self.assertRegexpMatches(test_pkg.description,
                                 r'This is the simplest mmpack specfile possible.*')
Ejemplo n.º 8
0
    def test_package_full(self):
        """
        the full spec parsing
        """
        specfile = os.path.dirname(os.path.abspath(__file__)) + '/specfiles' + '/full.yaml'
        test_pkg = SrcPackage(specfile, 'dummy_tag', 'empty_file')

        # test the general section values
        self.assertEqual(test_pkg.name, 'full')
        self.assertEqual(test_pkg.version, Version('1.0.0'))
        self.assertEqual(test_pkg.maintainer, '*****@*****.**')
        self.assertEqual(test_pkg.url, 'ssh://[email protected]:7999/~mmpack.test/full.git')
        self.assertEqual(test_pkg.description,
                         "This is the fullest mmpack specfile possible.\n")
        self.assertEqual(test_pkg.src_hash,
                         'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855')

        self.assertEqual(test_pkg.build_options, '-D_WITH_DUMMY_DEFINE=1')
        self.assertEqual(len(test_pkg.build_depends), 2)
        ref_build_depends = ['libmyotherlib-devel', 'libsomeotherlib-devel']
        self.assertEqual(sorted(test_pkg.build_depends), sorted(ref_build_depends))

        # ignore list is not tested here: they are removed from the install list
        # which means that doing a full install is necessary

        # test the overloaded and custom packages
        # This does not include the implicit packages
        ref_pkg_list_name = ['full', 'custom-package']
        test_pkg_list_name = test_pkg._packages.keys()
        self.assertEqual(len(test_pkg._packages), 2)
        self.assertEqual(sorted(ref_pkg_list_name), sorted(test_pkg_list_name))

        # test the customized packages further
        full = test_pkg._packages['full']
        custom = test_pkg._packages['custom-package']

        self.assertEqual(len(full._dependencies['depends']), 2)
        self.assertRegex(full.description,
                         r'This is the fullest mmpack specfile possible.\n\nThis should follow.*')

        self.assertEqual(len(custom._dependencies['sysdepends']), 2)
        self.assertEqual(len(custom._dependencies['depends']), 2)
        self.assertRegexpMatches(custom.description,
                                 r'This should overload .*')
Ejemplo n.º 9
0
 def test_prohibited(self):
     """
     test that underscores are rejected by the version class
     """
     with self.assertRaises(SyntaxError):
         Version('1_2.3')
Ejemplo n.º 10
0
 def test_wildcard_version(self):
     """
     test version wildcards
     """
     self.assertLess(Version("1.0.0"), Version("any"))
     self.assertLess(Version("any"), Version("1.0.0"))