__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Tests for L{twisted.python.versions}.
"""
import operator
from incremental import _inf
from twisted.python.versions import IncomparableVersions, Version, getVersionString
from twisted.trial.unittest import SynchronousTestCase as TestCase
class VersionsTests(TestCase):
def test_versionComparison(self) -> None:
"""
Versions can be compared for equality and order.
"""
va = Version("dummy", 1, 0, 0)
vb = Version("dummy", 0, 1, 0)
self.assertTrue(va > vb)
self.assertTrue(vb < va)
self.assertTrue(va >= vb)
self.assertTrue(vb <= va)
self.assertTrue(va != vb)
self.assertTrue(vb == Version("dummy", 0, 1, 0))
self.assertTrue(vb == vb)
def test_versionComparisonCaseInsensitive(self) -> None:
"""
Version packages are compared case insensitively.
"""
va = Version("twisted", 1, 0, 0)
vb = Version("Twisted", 0, 1, 0)
self.assertTrue(va > vb)
self.assertTrue(vb < va)
self.assertTrue(va >= vb)
self.assertTrue(vb <= va)
self.assertTrue(va != vb)
self.assertTrue(vb == Version("twisted", 0, 1, 0))
self.assertTrue(vb == Version("TWISted", 0, 1, 0))
self.assertTrue(vb == vb)
def test_comparingPrereleasesWithReleases(self) -> None:
"""
Prereleases are always less than versions without prereleases.
"""
va = Version("whatever", 1, 0, 0, prerelease=1)
vb = Version("whatever", 1, 0, 0)
self.assertTrue(va < vb)
self.assertFalse(va > vb)
self.assertNotEqual(vb, va)
def test_comparingPrereleases(self) -> None:
"""
The value specified as the prerelease is used in version comparisons.
"""
va = Version("whatever", 1, 0, 0, prerelease=1)
vb = Version("whatever", 1, 0, 0, prerelease=2)
self.assertTrue(va < vb)
self.assertTrue(vb > va)
self.assertTrue(va <= vb)
self.assertTrue(vb >= va)
self.assertTrue(va != vb)
self.assertTrue(vb == Version("whatever", 1, 0, 0, prerelease=2))
self.assertTrue(va == va)
def test_infComparison(self) -> None:
"""
L{_inf} is equal to L{_inf}.
This is a regression test.
"""
self.assertEqual(_inf, _inf)
def test_disallowBuggyComparisons(self) -> None:
"""
The package names of the Version objects need to be the same,
"""
self.assertRaises(
IncomparableVersions,
operator.eq,
Version("dummy", 1, 0, 0),
Version("dumym", 1, 0, 0),
)
def test_notImplementedComparisons(self) -> None:
"""
Comparing a L{Version} to some other object type results in
C{NotImplemented}.
"""
va = Version("dummy", 1, 0, 0)
vb = ("dummy", 1, 0, 0) # a tuple is not a Version object
result = va.__cmp__(vb) # type:ignore[arg-type]
self.assertEqual(result, NotImplemented)
def test_repr(self) -> None:
"""
Calling C{repr} on a version returns a human-readable string
representation of the version.
"""
self.assertEqual(repr(Version("dummy", 1, 2, 3)), "Version('dummy', 1, 2, 3)")
def test_reprWithPrerelease(self) -> None:
"""
Calling C{repr} on a version with a prerelease returns a human-readable
string representation of the version including the prerelease.
"""
self.assertEqual(
repr(Version("dummy", 1, 2, 3, prerelease=4)),
"Version('dummy', 1, 2, 3, release_candidate=4)",
)
def test_str(self) -> None:
"""
Calling C{str} on a version returns a human-readable string
representation of the version.
"""
self.assertEqual(str(Version("dummy", 1, 2, 3)), "[dummy, version 1.2.3]")
def _test_strWithPrerelease(self) -> None:
"""
Calling C{str} on a version with a prerelease includes the prerelease.
"""
self.assertEqual(
str(Version("dummy", 1, 0, 0, prerelease=1)), "[dummy, version 1.0.0.rc1]"
)
def testShort(self) -> None:
self.assertEqual(Version("dummy", 1, 2, 3).short(), "1.2.3")
def test_getVersionString(self) -> None:
"""
L{getVersionString} returns a string with the package name and the
short version number.
"""
self.assertEqual("Twisted 8.0.0", getVersionString(Version("Twisted", 8, 0, 0)))
def _test_getVersionStringWithPrerelease(self) -> None:
"""
L{getVersionString} includes the prerelease, if any.
"""
self.assertEqual(
getVersionString(Version("whatever", 8, 0, 0, prerelease=1)),
"whatever 8.0.0.rc1",
)
def test_base(self) -> None:
"""
The L{base} method returns a very simple representation of the version.
"""
self.assertEqual(Version("foo", 1, 0, 0).base(), "1.0.0")
def _test_baseWithPrerelease(self) -> None:
"""
The base version includes 'preX' for versions with prereleases.
"""
self.assertEqual(Version("foo", 1, 0, 0, prerelease=8).base(), "1.0.0.rc8")
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| __pycache__ | Folder | 0755 |
|
|
| __init__.py | File | 42 B | 0644 |
|
| deprecatedattributes.py | File | 505 B | 0644 |
|
| modules_helpers.py | File | 1.77 KB | 0644 |
|
| pullpipe.py | File | 1.24 KB | 0644 |
|
| strategies.py | File | 1.08 KB | 0644 |
|
| test_appdirs.py | File | 1.05 KB | 0644 |
|
| test_components.py | File | 25.22 KB | 0644 |
|
| test_constants.py | File | 36.94 KB | 0644 |
|
| test_deprecate.py | File | 41.1 KB | 0644 |
|
| test_fakepwd.py | File | 14.84 KB | 0644 |
|
| test_htmlizer.py | File | 1.26 KB | 0644 |
|
| test_inotify.py | File | 3.62 KB | 0644 |
|
| test_release.py | File | 16.18 KB | 0644 |
|
| test_runtime.py | File | 7.92 KB | 0644 |
|
| test_sendmsg.py | File | 10.01 KB | 0644 |
|
| test_shellcomp.py | File | 20.67 KB | 0644 |
|
| test_syslog.py | File | 5.04 KB | 0644 |
|
| test_systemd.py | File | 7.17 KB | 0644 |
|
| test_textattributes.py | File | 670 B | 0644 |
|
| test_tzhelper.py | File | 4.05 KB | 0644 |
|
| test_url.py | File | 29.36 KB | 0644 |
|
| test_urlpath.py | File | 9.97 KB | 0644 |
|
| test_util.py | File | 34.07 KB | 0644 |
|
| test_versions.py | File | 5.26 KB | 0644 |
|
| test_win32.py | File | 2.01 KB | 0644 |
|
| test_zippath.py | File | 3.81 KB | 0644 |
|
| test_zipstream.py | File | 11.8 KB | 0644 |
|