mirror of
https://github.com/cryptoadvance/specter-desktop.git
synced 2026-08-13 12:33:29 +02:00
Bugfix: tests on master (#1465)
This commit is contained in:
parent
51369bdb4a
commit
659baad94f
2 changed files with 30 additions and 19 deletions
|
|
@ -76,22 +76,7 @@ class VersionChecker:
|
|||
logger.warning(
|
||||
"We're checking here for a different binary than specter-desktop. We're hopefully in a pytest"
|
||||
)
|
||||
try:
|
||||
if self.specter:
|
||||
requests_session = self.specter.requests_session(force_tor=False)
|
||||
else:
|
||||
requests_session = requests.Session()
|
||||
releases = requests_session.get(
|
||||
f"https://api.github.com/repos/cryptoadvance/specter-desktop/releases"
|
||||
).json()
|
||||
for release in releases:
|
||||
if release["prerelease"] or release["draft"]:
|
||||
continue
|
||||
latest = release["name"]
|
||||
break
|
||||
except Exception as e:
|
||||
logger.exception(e)
|
||||
latest = "unknown"
|
||||
latest = VersionChecker._get_latest_version_from_github(self.specter)
|
||||
return current, latest
|
||||
|
||||
def _get_pip_version(self):
|
||||
|
|
@ -149,6 +134,25 @@ class VersionChecker:
|
|||
self.stop()
|
||||
return current, latest, False
|
||||
|
||||
@classmethod
|
||||
def _get_latest_version_from_github(cls, specter):
|
||||
try:
|
||||
if specter:
|
||||
requests_session = specter.requests_session(force_tor=False)
|
||||
else:
|
||||
requests_session = requests.Session()
|
||||
|
||||
releases = (
|
||||
requests_session.get(f"https://pypi.org/pypi/{self.name}/json")
|
||||
.json()["releases"]
|
||||
.keys()
|
||||
)
|
||||
latest = list(releases)[-1]
|
||||
except Exception as e:
|
||||
logger.exception(e)
|
||||
latest = "unknown"
|
||||
return latest
|
||||
|
||||
@classmethod
|
||||
def _version_txt_content(cls):
|
||||
version_file = "version.txt"
|
||||
|
|
|
|||
|
|
@ -5,6 +5,9 @@ from cryptoadvance.specter.util.version import VersionChecker
|
|||
from mock import Mock, patch, PropertyMock
|
||||
|
||||
|
||||
@patch(
|
||||
"cryptoadvance.specter.util.version.VersionChecker._get_latest_version_from_github"
|
||||
)
|
||||
@patch(
|
||||
"cryptoadvance.specter.util.version.VersionChecker.installation_type",
|
||||
new_callable=PropertyMock,
|
||||
|
|
@ -12,8 +15,12 @@ from mock import Mock, patch, PropertyMock
|
|||
@patch("cryptoadvance.specter.util.version.importlib_metadata.version")
|
||||
@patch("cryptoadvance.specter.util.version.VersionChecker._version_txt_content")
|
||||
def test_VersionChecker(
|
||||
VersionChecker_version_txt_content, imp_lib_mock, mock_installation_type
|
||||
VersionChecker_version_txt_content,
|
||||
imp_lib_mock,
|
||||
mock_installation_type,
|
||||
mock_latest,
|
||||
):
|
||||
mock_latest.return_value = "v9.10.21"
|
||||
imp_lib_mock.return_value = "1.2.3"
|
||||
VersionChecker_version_txt_content.return_value = "2.3.4"
|
||||
mock_installation_type.return_value = "pip"
|
||||
|
|
@ -27,7 +34,7 @@ def test_VersionChecker(
|
|||
|
||||
assert vc._get_binary_version() == (
|
||||
"1.2.3",
|
||||
"v1.7.0",
|
||||
"v9.10.21",
|
||||
) # will break with a new release
|
||||
# assert vc._get_pip_version() == ("1.2.3", "v5.3.0") # Might break anytime
|
||||
# assert vc.info == "h"
|
||||
|
|
@ -40,7 +47,7 @@ def test_VersionChecker(
|
|||
|
||||
assert vc._get_binary_version() == (
|
||||
"2.3.4",
|
||||
"v1.7.0",
|
||||
"v9.10.21",
|
||||
)
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue