From fcfb2caa06342c89fd8a8ebe8c8ba584c0d5c2d8 Mon Sep 17 00:00:00 2001 From: Oleg Broytman Date: Mon, 3 Feb 2025 00:54:57 +0300 Subject: [PATCH] Tests(test_list_torrents): Fix date/time handling Especially with overflow d/t; esp on w32. --- tests/data/expected/alice.txt | 10 +++++----- tests/data/expected/folder.txt | 12 ++++++------ tests/data/expected/lots-of-numbers.txt | 24 ++++++++++++------------ tests/data/expected/numbers.txt | 16 ++++++++-------- tests/extfs.d | 2 +- tests/test_list_torrents.py | 7 +++++-- 6 files changed, 37 insertions(+), 34 deletions(-) diff --git a/tests/data/expected/alice.txt b/tests/data/expected/alice.txt index 02f6c73..f4c8d5e 100644 --- a/tests/data/expected/alice.txt +++ b/tests/data/expected/alice.txt @@ -1,5 +1,5 @@ -dr-xr-xr-x 1 user group 0 11-25-9999 14:44 .META --r--r--r-- 1 user group 25 11-25-9999 14:44 .META/creation date --r--r--r-- 1 user group 5 11-25-9999 14:44 .META/encoding --r--r--r-- 1 user group 5 11-25-9999 14:44 .META/piece length --r--r--r-- 1 user group 163783 11-25-9999 14:44 alice.txt +dr-xr-xr-x 1 user group 0 12-31-9999 23:59 .META +-r--r--r-- 1 user group 24 12-31-9999 23:59 .META/creation date +-r--r--r-- 1 user group 5 12-31-9999 23:59 .META/encoding +-r--r--r-- 1 user group 5 12-31-9999 23:59 .META/piece length +-r--r--r-- 1 user group 163783 12-31-9999 23:59 alice.txt diff --git a/tests/data/expected/folder.txt b/tests/data/expected/folder.txt index fc86126..c49ff5a 100644 --- a/tests/data/expected/folder.txt +++ b/tests/data/expected/folder.txt @@ -1,6 +1,6 @@ -dr-xr-xr-x 1 user group 0 02-12-9999 23:30 .META --r--r--r-- 1 user group 25 02-12-9999 23:30 .META/creation date --r--r--r-- 1 user group 5 02-12-9999 23:30 .META/encoding --r--r--r-- 1 user group 5 02-12-9999 23:30 .META/piece length -dr-xr-xr-x 1 user group 0 02-12-9999 23:30 folder --r--r--r-- 1 user group 15 02-12-9999 23:30 folder/file.txt +dr-xr-xr-x 1 user group 0 12-31-9999 23:59 .META +-r--r--r-- 1 user group 24 12-31-9999 23:59 .META/creation date +-r--r--r-- 1 user group 5 12-31-9999 23:59 .META/encoding +-r--r--r-- 1 user group 5 12-31-9999 23:59 .META/piece length +dr-xr-xr-x 1 user group 0 12-31-9999 23:59 folder +-r--r--r-- 1 user group 15 12-31-9999 23:59 folder/file.txt diff --git a/tests/data/expected/lots-of-numbers.txt b/tests/data/expected/lots-of-numbers.txt index 7f6d6d8..c005934 100644 --- a/tests/data/expected/lots-of-numbers.txt +++ b/tests/data/expected/lots-of-numbers.txt @@ -1,12 +1,12 @@ -dr-xr-xr-x 1 user group 0 03-28-9999 03:18 .META --r--r--r-- 1 user group 25 03-28-9999 03:18 .META/creation date --r--r--r-- 1 user group 5 03-28-9999 03:18 .META/encoding --r--r--r-- 1 user group 5 03-28-9999 03:18 .META/piece length -dr-xr-xr-x 1 user group 0 03-28-9999 03:18 lots-of-numbers/big numbers --r--r--r-- 1 user group 2 03-28-9999 03:18 lots-of-numbers/big numbers/10.txt --r--r--r-- 1 user group 2 03-28-9999 03:18 lots-of-numbers/big numbers/11.txt --r--r--r-- 1 user group 2 03-28-9999 03:18 lots-of-numbers/big numbers/12.txt -dr-xr-xr-x 1 user group 0 03-28-9999 03:18 lots-of-numbers/small numbers --r--r--r-- 1 user group 1 03-28-9999 03:18 lots-of-numbers/small numbers/1.txt --r--r--r-- 1 user group 2 03-28-9999 03:18 lots-of-numbers/small numbers/2.txt --r--r--r-- 1 user group 3 03-28-9999 03:18 lots-of-numbers/small numbers/3.txt +dr-xr-xr-x 1 user group 0 12-31-9999 23:59 .META +-r--r--r-- 1 user group 24 12-31-9999 23:59 .META/creation date +-r--r--r-- 1 user group 5 12-31-9999 23:59 .META/encoding +-r--r--r-- 1 user group 5 12-31-9999 23:59 .META/piece length +dr-xr-xr-x 1 user group 0 12-31-9999 23:59 lots-of-numbers/big numbers +-r--r--r-- 1 user group 2 12-31-9999 23:59 lots-of-numbers/big numbers/10.txt +-r--r--r-- 1 user group 2 12-31-9999 23:59 lots-of-numbers/big numbers/11.txt +-r--r--r-- 1 user group 2 12-31-9999 23:59 lots-of-numbers/big numbers/12.txt +dr-xr-xr-x 1 user group 0 12-31-9999 23:59 lots-of-numbers/small numbers +-r--r--r-- 1 user group 1 12-31-9999 23:59 lots-of-numbers/small numbers/1.txt +-r--r--r-- 1 user group 2 12-31-9999 23:59 lots-of-numbers/small numbers/2.txt +-r--r--r-- 1 user group 3 12-31-9999 23:59 lots-of-numbers/small numbers/3.txt diff --git a/tests/data/expected/numbers.txt b/tests/data/expected/numbers.txt index c282179..bef7e68 100644 --- a/tests/data/expected/numbers.txt +++ b/tests/data/expected/numbers.txt @@ -1,8 +1,8 @@ -dr-xr-xr-x 1 user group 0 02-15-9999 17:44 .META --r--r--r-- 1 user group 25 02-15-9999 17:44 .META/creation date --r--r--r-- 1 user group 5 02-15-9999 17:44 .META/encoding --r--r--r-- 1 user group 5 02-15-9999 17:44 .META/piece length -dr-xr-xr-x 1 user group 0 02-15-9999 17:44 numbers --r--r--r-- 1 user group 1 02-15-9999 17:44 numbers/1.txt --r--r--r-- 1 user group 2 02-15-9999 17:44 numbers/2.txt --r--r--r-- 1 user group 3 02-15-9999 17:44 numbers/3.txt +dr-xr-xr-x 1 user group 0 12-31-9999 23:59 .META +-r--r--r-- 1 user group 24 12-31-9999 23:59 .META/creation date +-r--r--r-- 1 user group 5 12-31-9999 23:59 .META/encoding +-r--r--r-- 1 user group 5 12-31-9999 23:59 .META/piece length +dr-xr-xr-x 1 user group 0 12-31-9999 23:59 numbers +-r--r--r-- 1 user group 1 12-31-9999 23:59 numbers/1.txt +-r--r--r-- 1 user group 2 12-31-9999 23:59 numbers/2.txt +-r--r--r-- 1 user group 3 12-31-9999 23:59 numbers/3.txt diff --git a/tests/extfs.d b/tests/extfs.d index 54decb7..908fee3 160000 --- a/tests/extfs.d +++ b/tests/extfs.d @@ -1 +1 @@ -Subproject commit 54decb72d473126554258d7c1677745ea1c7a8c4 +Subproject commit 908fee3bf286199e2664f13b9767be0152de161a diff --git a/tests/test_list_torrents.py b/tests/test_list_torrents.py index b01f382..741ed44 100755 --- a/tests/test_list_torrents.py +++ b/tests/test_list_torrents.py @@ -1,7 +1,7 @@ #! /usr/bin/env python3 -from datetime import datetime -from time import mktime +from datetime import datetime, timedelta +from time import mktime, timezone import os import os.path import subprocess @@ -25,6 +25,9 @@ def _test1(basename): if basename == 'leaves-metadata': # The torrent lacks creation_date field, set fixd timestamp leaves_metadata_dt = datetime(2016, 3, 16, 19, 33) + if (sys.version_info[:2] <= (3, 7)) and \ + (sys.platform == 'win32'): + leaves_metadata_dt -= timedelta(seconds=timezone) timestamp = mktime(leaves_metadata_dt.timetuple()) os.utime(torrent_file, (timestamp, timestamp)) -- 2.39.5