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:
parent
9560ed955c
commit
59b1899d79
@ -170,7 +170,7 @@ class SignatureDataController:
|
||||
last_updated = self.data.get("last_updated", None)
|
||||
if last_updated:
|
||||
try:
|
||||
last_updated = datetime.fromisoformat(last_updated)
|
||||
last_updated = datetime.fromtimestamp(last_updated)
|
||||
except ValueError as e:
|
||||
raise SignatureDataMalformedException() from e
|
||||
except TypeError as e:
|
||||
@ -247,7 +247,7 @@ class SignatureDataController:
|
||||
logging.debug(_("downloading '{}'").format(self.url))
|
||||
with urllib.request.urlopen(self.url) as 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):
|
||||
@ -260,8 +260,8 @@ class ExodusSignatureDataController(SignatureDataController):
|
||||
|
||||
data = {
|
||||
"signatures": {},
|
||||
"timestamp": scanner._datetime_now().isoformat(),
|
||||
"last_updated": scanner._datetime_now().isoformat(),
|
||||
"timestamp": scanner._datetime_now().timestamp(),
|
||||
"last_updated": scanner._datetime_now().timestamp(),
|
||||
"version": SCANNER_CACHE_VERSION,
|
||||
}
|
||||
|
||||
@ -1104,7 +1104,7 @@ SUSS_DEFAULT = '''{
|
||||
"license": "NonFree"
|
||||
}
|
||||
},
|
||||
"timestamp": "2022-09-29T19:35:04.875586+00:00",
|
||||
"timestamp": 1664480104.875586,
|
||||
"version": 1,
|
||||
"last_updated": "2022-09-30T05:13:18.411707+02:00"
|
||||
"last_updated": 1664480104.875586
|
||||
}'''
|
||||
|
@ -508,19 +508,19 @@ class Test_SignatureDataController(unittest.TestCase):
|
||||
# check_last_updated
|
||||
def test_check_last_updated_ok(self):
|
||||
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()
|
||||
|
||||
def test_check_last_updated_exception_cache_outdated(self):
|
||||
sdc = fdroidserver.scanner.SignatureDataController('nnn', 'fff.yml', 'https://example.com/test.json')
|
||||
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):
|
||||
sdc.check_last_updated()
|
||||
|
||||
def test_check_last_updated_exception_not_string(self):
|
||||
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):
|
||||
sdc.check_last_updated()
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user