1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-10-02 09:10:11 +02:00

scanner: switch form iso8601 to unix timestamp for python3.5 support

This commit is contained in:
Michael Pöhn 2022-09-30 14:18:31 +02:00
parent 9560ed955c
commit 59b1899d79
2 changed files with 9 additions and 9 deletions

View File

@ -170,7 +170,7 @@ class SignatureDataController:
last_updated = self.data.get("last_updated", None) last_updated = self.data.get("last_updated", None)
if last_updated: if last_updated:
try: try:
last_updated = datetime.fromisoformat(last_updated) last_updated = datetime.fromtimestamp(last_updated)
except ValueError as e: except ValueError as e:
raise SignatureDataMalformedException() from e raise SignatureDataMalformedException() from e
except TypeError as e: except TypeError as e:
@ -247,7 +247,7 @@ class SignatureDataController:
logging.debug(_("downloading '{}'").format(self.url)) logging.debug(_("downloading '{}'").format(self.url))
with urllib.request.urlopen(self.url) as f: with urllib.request.urlopen(self.url) as f:
self.set_data(json.load(f)) self.set_data(json.load(f))
self.data['last_updated'] = scanner._datetime_now().isoformat() self.data['last_updated'] = scanner._datetime_now().timestamp()
class ExodusSignatureDataController(SignatureDataController): class ExodusSignatureDataController(SignatureDataController):
@ -260,8 +260,8 @@ class ExodusSignatureDataController(SignatureDataController):
data = { data = {
"signatures": {}, "signatures": {},
"timestamp": scanner._datetime_now().isoformat(), "timestamp": scanner._datetime_now().timestamp(),
"last_updated": scanner._datetime_now().isoformat(), "last_updated": scanner._datetime_now().timestamp(),
"version": SCANNER_CACHE_VERSION, "version": SCANNER_CACHE_VERSION,
} }
@ -1104,7 +1104,7 @@ SUSS_DEFAULT = '''{
"license": "NonFree" "license": "NonFree"
} }
}, },
"timestamp": "2022-09-29T19:35:04.875586+00:00", "timestamp": 1664480104.875586,
"version": 1, "version": 1,
"last_updated": "2022-09-30T05:13:18.411707+02:00" "last_updated": 1664480104.875586
}''' }'''

View File

@ -508,19 +508,19 @@ class Test_SignatureDataController(unittest.TestCase):
# check_last_updated # check_last_updated
def test_check_last_updated_ok(self): def test_check_last_updated_ok(self):
sdc = fdroidserver.scanner.SignatureDataController('nnn', 'fff.yml', 'https://example.com/test.json') sdc = fdroidserver.scanner.SignatureDataController('nnn', 'fff.yml', 'https://example.com/test.json')
sdc.data['last_updated'] = datetime.utcnow().isoformat() sdc.data['last_updated'] = datetime.utcnow().timestamp()
sdc.check_last_updated() sdc.check_last_updated()
def test_check_last_updated_exception_cache_outdated(self): def test_check_last_updated_exception_cache_outdated(self):
sdc = fdroidserver.scanner.SignatureDataController('nnn', 'fff.yml', 'https://example.com/test.json') sdc = fdroidserver.scanner.SignatureDataController('nnn', 'fff.yml', 'https://example.com/test.json')
sdc.cache_duration = timedelta(days=7) sdc.cache_duration = timedelta(days=7)
sdc.data['last_updated'] = (datetime.utcnow() - timedelta(days=30)).isoformat() sdc.data['last_updated'] = (datetime.utcnow() - timedelta(days=30)).timestamp()
with self.assertRaises(fdroidserver.scanner.SignatureDataOutdatedException): with self.assertRaises(fdroidserver.scanner.SignatureDataOutdatedException):
sdc.check_last_updated() sdc.check_last_updated()
def test_check_last_updated_exception_not_string(self): def test_check_last_updated_exception_not_string(self):
sdc = fdroidserver.scanner.SignatureDataController('nnn', 'fff.yml', 'https://example.com/test.json') sdc = fdroidserver.scanner.SignatureDataController('nnn', 'fff.yml', 'https://example.com/test.json')
sdc.data['last_updated'] = 12345 sdc.data['last_updated'] = 'sepp'
with self.assertRaises(fdroidserver.scanner.SignatureDataMalformedException): with self.assertRaises(fdroidserver.scanner.SignatureDataMalformedException):
sdc.check_last_updated() sdc.check_last_updated()