Ejemplo n.º 1
0
    def testMajorMinorPatchNotEqual(self):

        sv1: SemanticVersion = SemanticVersion(GOOD_BASIC_VERSION)
        sv2: SemanticVersion = SemanticVersion('6.1.2')

        self.assertNotEqual(sv1, sv2,
                            'These should NOT be the same semantic version')
Ejemplo n.º 2
0
    def testComparableTrue(self):

        sv1: SemanticVersion = SemanticVersion(GOOD_BASIC_VERSION)
        sv2: SemanticVersion = SemanticVersion(f'{GOOD_BASIC_VERSION}+.5988')

        actualValue: bool = sv1._comparable(other=sv2)

        self.assertTrue(actualValue, 'These should be comparable')
Ejemplo n.º 3
0
    def testMajorMinorPatchBuildNumberEqual(self):

        sv1: SemanticVersion = SemanticVersion(GOOD_BUILD_NUMBER)
        sv2: SemanticVersion = SemanticVersion(GOOD_BUILD_NUMBER)

        self.assertEqual(
            sv1, sv2,
            'These should be the same semantic version with a build number')
Ejemplo n.º 4
0
    def testMajorMinorPatchPreReleaseNotEqual(self):

        sv1: SemanticVersion = SemanticVersion(GOOD_BASIC_VERSION)
        sv2: SemanticVersion = SemanticVersion('7.0.0-Beta.1.0.0')

        self.assertNotEqual(
            sv1, sv2,
            'These should NOT be the same semantic version with a pre-release value'
        )
Ejemplo n.º 5
0
    def testMajorMinorPatchPreReleaseEqual(self):

        sv1: SemanticVersion = SemanticVersion(GOOD_PRE_RELEASE)
        sv2: SemanticVersion = SemanticVersion(GOOD_PRE_RELEASE)

        self.assertEqual(
            sv1, sv2,
            'These should be the same semantic version with a pre-release value'
        )
Ejemplo n.º 6
0
    def testMajorMinorPatchBuildNumberNotEqual(self):

        sv1: SemanticVersion = SemanticVersion(GOOD_BUILD_NUMBER)
        sv2: SemanticVersion = SemanticVersion(f'{GOOD_BASIC_VERSION}+.5989')

        self.assertNotEqual(
            sv1, sv2,
            'These should NOT be the same semantic version with a build number'
        )
Ejemplo n.º 7
0
    def onHelpVersion(self, event: CommandEvent):
        """
        Check for newer version.
        Args:
            event:
        """
        from org.pyut.general.PyutVersion import PyutVersion
        from org.pyut.general.GithubAdapter import GithubAdapter
        from org.pyut.general.SemanticVersion import SemanticVersion

        wxBeginBusyCursor()
        githubAdapter: GithubAdapter = GithubAdapter()
        latestVersion: SemanticVersion = githubAdapter.getLatestVersionNumber()

        myVersion: SemanticVersion = SemanticVersion(
            PyutVersion.getPyUtVersion())
        if myVersion < latestVersion:
            msg = _("PyUt version ") + str(latestVersion) + _(
                " is available on https://github.com/hasii2011/PyUt/releases")
        else:
            msg = _("No newer version yet !")

        wxEndBusyCursor()
        wxYield()
        PyutUtils.displayInformation(msg, _("Check for newer version"),
                                     self._parent)
Ejemplo n.º 8
0
    def testComparableFalse(self):

        sv1: SemanticVersion = SemanticVersion(GOOD_BASIC_VERSION)
        sve: SemanticVersionError = SemanticVersionError(
            'I am not a SemanticVersion')

        actualValue: bool = sv1._comparable(other=sve)

        self.assertFalse(actualValue, 'These should NOT be comparable')
Ejemplo n.º 9
0
    def testIsSequenceLessOnlyRightIsInt(self):

        sv1: SemanticVersion = SemanticVersion('7.0.0-Beta.1.0.0')

        seqLeft = ['Beta', 1, 0, 'a']
        seqRight = ['Beta', 1, 0, 1]

        ans: bool = sv1._isSequenceLess(seqLeft, seqRight)

        self.assertFalse(ans, 'Left sequence is not less')
Ejemplo n.º 10
0
    def testBadVersion(self):

        try:
            badVersion: str = 'x.x.x'
            semanticVersion: SemanticVersion = SemanticVersion(badVersion)

            self.assertTrue(False,
                            f'{semanticVersion} should have thrown exception')
        except SemanticVersionError as se:
            self.logger.info(f'Expected: {se}')
Ejemplo n.º 11
0
    def testIsSequenceRightAlphaIsLess(self):

        sv1: SemanticVersion = SemanticVersion('7.0.0-Beta.1.0.0')

        seqLeft = ['Beta', 1, 0, 'b']
        seqRight = ['Beta', 1, 0, 'A']

        ans: bool = sv1._isSequenceLess(seqLeft, seqRight)

        self.assertFalse(ans, 'Left sequence is not less')
Ejemplo n.º 12
0
    def testGoodBasicVersion(self):

        try:
            goodVersion: str = GOOD_BASIC_VERSION
            semanticVersion: SemanticVersion = SemanticVersion(goodVersion)
            self.assertIsNotNone(semanticVersion, 'Did not initialize')

            self.logger.info(f'Good Basic Version: {semanticVersion}')
        except SemanticVersionError as sve:
            self.fail(f'{sve}')
Ejemplo n.º 13
0
    def testIsSequenceLessOnlyLeftIsInt(self):

        sv1: SemanticVersion = SemanticVersion('7.0.0-Beta.1.0.0')

        seqLeft = ['Beta', 1, 0, 0]
        seqRight = ['Beta', 1, 0, 'a']

        ans: bool = sv1._isSequenceLess(seqLeft, seqRight)

        self.assertTrue(ans, 'Left sequence should be less')
Ejemplo n.º 14
0
    def testGoodPreReleaseVersion(self):
        try:
            semanticVersion: SemanticVersion = SemanticVersion(
                GOOD_PRE_RELEASE)
            self.assertIsNotNone(semanticVersion, 'Did not initialize')

            self.logger.info(
                f'Good Pre-Release Version: {semanticVersion.__repr__()}')

        except SemanticVersionError as sve:
            self.fail(f'{sve}')
Ejemplo n.º 15
0
    def testGoodVersionWithBuildNumber(self):
        try:

            semanticVersion: SemanticVersion = SemanticVersion(
                GOOD_BUILD_NUMBER)
            self.assertIsNotNone(semanticVersion, 'Did not initialize')

            self.logger.info(
                f'Good Version with BuildNumber: {semanticVersion}')

        except SemanticVersionError as sve:
            self.fail(f'{sve}')
Ejemplo n.º 16
0
    def getLatestVersionNumber(self) -> SemanticVersion:

        repo: Repository = self._github.get_repo(
            GithubAdapter.PYUT_REPOSITORY_SLUG)
        self.logger.info(f'{repo.full_name=}')

        releases: PaginatedList = repo.get_releases()

        latestReleaseVersion: SemanticVersion = SemanticVersion('0.0.0')
        for release in releases:
            gitRelease: GitRelease = cast(GitRelease, release)

            releaseNumber: str = gitRelease.tag_name
            numPeriods: int = self._countPeriods(releaseNumber)
            if numPeriods < 2:
                releaseNumber = f'{releaseNumber}.0'

            releaseVersion: SemanticVersion = SemanticVersion(releaseNumber)
            self.logger.debug(f'{releaseVersion=}')
            if latestReleaseVersion < releaseVersion:
                latestReleaseVersion = releaseVersion

        return latestReleaseVersion
Ejemplo n.º 17
0
 def testGoodMajorVersion(self):
     self.assertEqual(
         SemanticVersion(GOOD_BASIC_VERSION).major, 6, 'Must Be true')
Ejemplo n.º 18
0
 def testGoodPatchVersion(self):
     self.assertEqual(
         SemanticVersion(GOOD_BASIC_VERSION).patch, 1, 'Must Be true')
Ejemplo n.º 19
0
    def testGoodStr(self):

        self.assertEqual(str(SemanticVersion('0.0.0')), '0.0.0')
Ejemplo n.º 20
0
    def testMajorMinorPatchPreReleaseLessThan(self):

        sv1: SemanticVersion = SemanticVersion('7.0.0-Beta.1.0.0')
        sv2: SemanticVersion = SemanticVersion('7.0.0-Beta.1.0.1')

        self.assertLess(sv1, sv2, f'{sv1} should less than {sv2}')
Ejemplo n.º 21
0
    def testMajorMinorPatchLessThan(self):
        sv1: SemanticVersion = SemanticVersion(GOOD_PREVIOUS_BASIC_VERSION)
        sv2: SemanticVersion = SemanticVersion(GOOD_BASIC_VERSION)

        self.assertLess(sv1, sv2, 'The previous version must be less')
Ejemplo n.º 22
0
    def testPreReleaseLessThan(self):

        sv1: SemanticVersion = SemanticVersion('6.0.0-1.2')
        sv2: SemanticVersion = SemanticVersion('6.0.0-1.3')

        self.assertLess(sv1, sv2, 'The pre-release version must be less')
Ejemplo n.º 23
0
    def testBuildNumberGreaterThan(self):

        sv1: SemanticVersion = SemanticVersion(f'{GOOD_BASIC_VERSION}+.6000')
        sv2: SemanticVersion = SemanticVersion(f'{GOOD_BASIC_VERSION}+.5988')

        self.assertGreater(sv1, sv2, 'The build number IS less')
Ejemplo n.º 24
0
    def testPreReleaseGreaterThan(self):

        sv1: SemanticVersion = SemanticVersion('6.0.0-1.4')
        sv2: SemanticVersion = SemanticVersion('6.0.0-1.3')

        self.assertGreater(sv1, sv2, 'The pre-release version must be less')