encommon 0.22.8__tar.gz → 0.22.10__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {encommon-0.22.8/encommon.egg-info → encommon-0.22.10}/PKG-INFO +1 -1
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/parse.py +9 -3
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_timers.py +25 -18
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_windows.py +37 -22
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/timers.py +235 -125
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/windows.py +283 -141
- encommon-0.22.10/encommon/version.txt +1 -0
- {encommon-0.22.8 → encommon-0.22.10/encommon.egg-info}/PKG-INFO +1 -1
- encommon-0.22.8/encommon/version.txt +0 -1
- {encommon-0.22.8 → encommon-0.22.10}/LICENSE +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/MANIFEST.in +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/README.md +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/colors/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/colors/color.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/colors/test/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/colors/test/test_color.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/config.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/files.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/logger.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/params.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/paths.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/test/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/test/test_config.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/test/test_files.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/test/test_logger.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/test/test_paths.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/test/test_utils.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/config/utils.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/conftest.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/crypts/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/crypts/crypts.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/crypts/hashes.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/crypts/params.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/crypts/test/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/crypts/test/test_crypts.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/crypts/test/test_hashes.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/parse/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/parse/jinja2.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/parse/network.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/parse/test/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/parse/test/test_jinja2.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/parse/test/test_network.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/py.typed +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/common.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/duration.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/params.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_duration.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_params.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_parse.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_time.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_timer.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_unitime.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_utils.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/test/test_window.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/time.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/timer.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/unitime.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/utils.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/times/window.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/classes.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/dicts.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/empty.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/funcs.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/lists.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/notate.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/strings.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/test/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/test/test_classes.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/test/test_dicts.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/test/test_empty.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/test/test_funcs.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/test/test_lists.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/test/test_notate.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/test/test_strings.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/types/types.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/common.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/files.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/match.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/paths.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/sample.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/stdout.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/test/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/test/test_files.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/test/test_match.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/test/test_paths.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/test/test_sample.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/utils/test/test_stdout.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/content.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/images/enasis.svg +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/images/failure.svg +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/images/information.svg +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/images/success.svg +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/images/warning.svg +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/index.html +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/color.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/datagrid.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/datetime.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/default.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/duration.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/helpers.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/image.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/message.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/moderate.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/numeric.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/statate.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/scripts/tagues.js +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/color.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/datagrid.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/datetime.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/default.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/duration.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/image.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/message.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/moderate.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/numeric.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/statate.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/styles/tagues.css +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/__init__.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/conftest.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_color.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_content.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_datagrid.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_datetime.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_default.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_duration.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_helpers.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_image.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_message.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_moderate.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_numeric.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_statate.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon/webkit/test/test_tagues.py +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon.egg-info/SOURCES.txt +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon.egg-info/dependency_links.txt +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon.egg-info/requires.txt +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/encommon.egg-info/top_level.txt +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/pyproject.toml +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/require/install.txt +0 -0
- {encommon-0.22.8 → encommon-0.22.10}/setup.cfg +0 -0
@@ -8,6 +8,7 @@ is permitted, for more information consult the project license file.
|
|
8
8
|
|
9
9
|
|
10
10
|
from contextlib import suppress
|
11
|
+
from copy import deepcopy
|
11
12
|
from datetime import datetime
|
12
13
|
from re import match as re_match
|
13
14
|
from typing import Optional
|
@@ -82,7 +83,9 @@ def parse_time(
|
|
82
83
|
if (source is not None
|
83
84
|
and hasattr(source, 'source')):
|
84
85
|
|
85
|
-
source =
|
86
|
+
source = deepcopy(
|
87
|
+
source.source)
|
88
|
+
|
86
89
|
assert isinstance(
|
87
90
|
source, datetime)
|
88
91
|
|
@@ -106,10 +109,12 @@ def parse_time(
|
|
106
109
|
.astimezone(tzinfo))
|
107
110
|
|
108
111
|
if source in ['max', float('inf')]:
|
109
|
-
source =
|
112
|
+
source = deepcopy(
|
113
|
+
datetime.max)
|
110
114
|
|
111
115
|
if source in ['min', float('-inf')]:
|
112
|
-
source =
|
116
|
+
source = deepcopy(
|
117
|
+
datetime.min)
|
113
118
|
|
114
119
|
if (isinstance(source, str)
|
115
120
|
and re_match(SNAPABLE, source)):
|
@@ -127,6 +132,7 @@ def parse_time(
|
|
127
132
|
|
128
133
|
if (isinstance(source, datetime)
|
129
134
|
and not source.tzinfo):
|
135
|
+
source = deepcopy(source)
|
130
136
|
source = source.replace(
|
131
137
|
tzinfo=findtz(tzname))
|
132
138
|
|
@@ -14,10 +14,8 @@ from pytest import fixture
|
|
14
14
|
from pytest import raises
|
15
15
|
|
16
16
|
from ..params import TimerParams
|
17
|
-
from ..params import TimersParams
|
18
17
|
from ..time import Time
|
19
18
|
from ..timers import Timers
|
20
|
-
from ..timers import TimersTable
|
21
19
|
from ...types import DictStrAny
|
22
20
|
from ...types import inrepr
|
23
21
|
from ...types import instr
|
@@ -36,49 +34,54 @@ def timers(
|
|
36
34
|
:returns: Newly constructed instance of related class.
|
37
35
|
"""
|
38
36
|
|
37
|
+
model = TimerParams
|
39
38
|
|
40
39
|
source: DictStrAny = {
|
41
|
-
'one':
|
42
|
-
'two':
|
40
|
+
'one': model(timer=1),
|
41
|
+
'two': model(timer=1)}
|
43
42
|
|
44
43
|
|
45
|
-
params = TimersParams(
|
46
|
-
timers=source)
|
47
|
-
|
48
44
|
store = (
|
49
45
|
f'sqlite:///{tmp_path}'
|
50
46
|
'/cache.db')
|
51
47
|
|
52
48
|
timers = Timers(
|
53
|
-
params,
|
54
49
|
store=store)
|
55
50
|
|
56
|
-
|
51
|
+
table = (
|
52
|
+
timers
|
53
|
+
.store_table)
|
54
|
+
|
55
|
+
session = (
|
56
|
+
timers
|
57
|
+
.store_session)
|
57
58
|
|
58
59
|
|
59
|
-
|
60
|
+
record = table(
|
60
61
|
group='default',
|
61
62
|
unique='two',
|
62
63
|
last='1970-01-01T00:00:00Z',
|
63
64
|
update='1970-01-01T00:00:00Z')
|
64
65
|
|
65
|
-
session.
|
66
|
-
|
67
|
-
session.commit()
|
68
|
-
|
66
|
+
session.merge(record)
|
69
67
|
|
70
|
-
|
68
|
+
record = table(
|
71
69
|
group='default',
|
72
70
|
unique='tre',
|
73
71
|
last='1970-01-01T00:00:00Z',
|
74
72
|
update='1970-01-01T00:00:00Z')
|
75
73
|
|
76
|
-
session.
|
74
|
+
session.merge(record)
|
77
75
|
|
78
76
|
session.commit()
|
79
77
|
|
80
78
|
|
81
|
-
timers.
|
79
|
+
timers.create(
|
80
|
+
'one', source['one'])
|
81
|
+
|
82
|
+
timers.create(
|
83
|
+
'two', source['two'])
|
84
|
+
|
82
85
|
|
83
86
|
return timers
|
84
87
|
|
@@ -100,9 +103,11 @@ def test_Timers(
|
|
100
103
|
'_Timers__params',
|
101
104
|
'_Timers__store',
|
102
105
|
'_Timers__group',
|
106
|
+
'_Timers__table',
|
107
|
+
'_Timers__locker',
|
103
108
|
'_Timers__sengine',
|
104
109
|
'_Timers__session',
|
105
|
-
'
|
110
|
+
'_Timers__childs']
|
106
111
|
|
107
112
|
|
108
113
|
assert inrepr(
|
@@ -123,6 +128,8 @@ def test_Timers(
|
|
123
128
|
|
124
129
|
assert timers.group == 'default'
|
125
130
|
|
131
|
+
assert timers.store_table
|
132
|
+
|
126
133
|
assert timers.store_engine
|
127
134
|
|
128
135
|
assert timers.store_session
|
@@ -14,9 +14,7 @@ from pytest import fixture
|
|
14
14
|
from pytest import raises
|
15
15
|
|
16
16
|
from ..params import WindowParams
|
17
|
-
from ..params import WindowsParams
|
18
17
|
from ..windows import Windows
|
19
|
-
from ..windows import WindowsTable
|
20
18
|
from ...types import DictStrAny
|
21
19
|
from ...types import inrepr
|
22
20
|
from ...types import instr
|
@@ -35,61 +33,66 @@ def windows(
|
|
35
33
|
:returns: Newly constructed instance of related class.
|
36
34
|
"""
|
37
35
|
|
36
|
+
model = WindowParams
|
38
37
|
|
39
38
|
source: DictStrAny = {
|
40
|
-
'one':
|
39
|
+
'one': model(
|
41
40
|
window='* * * * *',
|
42
|
-
start=
|
41
|
+
start=300,
|
43
42
|
stop=610,
|
44
43
|
delay=10),
|
45
|
-
'two':
|
44
|
+
'two': model(
|
46
45
|
window='* * * * *',
|
47
46
|
start=300,
|
48
47
|
stop=620,
|
49
48
|
delay=10)}
|
50
49
|
|
51
50
|
|
52
|
-
params = WindowsParams(
|
53
|
-
windows=source)
|
54
|
-
|
55
51
|
store = (
|
56
52
|
f'sqlite:///{tmp_path}'
|
57
53
|
'/cache.db')
|
58
54
|
|
59
55
|
windows = Windows(
|
60
|
-
params,
|
61
56
|
start=310,
|
62
57
|
stop=610,
|
63
58
|
store=store)
|
64
59
|
|
65
|
-
|
60
|
+
table = (
|
61
|
+
windows
|
62
|
+
.store_table)
|
63
|
+
|
64
|
+
session = (
|
65
|
+
windows
|
66
|
+
.store_session)
|
66
67
|
|
67
68
|
|
68
|
-
|
69
|
+
record = table(
|
69
70
|
group='default',
|
70
71
|
unique='two',
|
71
72
|
last='1970-01-01T00:06:00Z',
|
72
73
|
next='1970-01-01T00:07:00Z',
|
73
74
|
update='1970-01-01T01:00:00Z')
|
74
75
|
|
75
|
-
session.
|
76
|
-
|
77
|
-
session.commit()
|
76
|
+
session.merge(record)
|
78
77
|
|
79
|
-
|
80
|
-
window = WindowsTable(
|
78
|
+
record = table(
|
81
79
|
group='default',
|
82
80
|
unique='tre',
|
83
81
|
last='1970-01-01T00:06:00Z',
|
84
82
|
next='1970-01-01T00:07:00Z',
|
85
83
|
update='1970-01-01T01:00:00Z')
|
86
84
|
|
87
|
-
session.
|
85
|
+
session.merge(record)
|
88
86
|
|
89
87
|
session.commit()
|
90
88
|
|
91
89
|
|
92
|
-
windows.
|
90
|
+
windows.create(
|
91
|
+
'one', source['one'])
|
92
|
+
|
93
|
+
windows.create(
|
94
|
+
'two', source['two'])
|
95
|
+
|
93
96
|
|
94
97
|
return windows
|
95
98
|
|
@@ -111,11 +114,13 @@ def test_Windows(
|
|
111
114
|
'_Windows__params',
|
112
115
|
'_Windows__store',
|
113
116
|
'_Windows__group',
|
117
|
+
'_Windows__table',
|
118
|
+
'_Windows__locker',
|
114
119
|
'_Windows__sengine',
|
115
120
|
'_Windows__session',
|
116
121
|
'_Windows__start',
|
117
122
|
'_Windows__stop',
|
118
|
-
'
|
123
|
+
'_Windows__childs']
|
119
124
|
|
120
125
|
|
121
126
|
assert inrepr(
|
@@ -136,6 +141,8 @@ def test_Windows(
|
|
136
141
|
|
137
142
|
assert windows.group == 'default'
|
138
143
|
|
144
|
+
assert windows.store_table
|
145
|
+
|
139
146
|
assert windows.store_engine
|
140
147
|
|
141
148
|
assert windows.store_session
|
@@ -161,15 +168,15 @@ def test_Windows(
|
|
161
168
|
window = windows.children['two']
|
162
169
|
|
163
170
|
assert window.next == (
|
164
|
-
'1970-01-01T00:
|
171
|
+
'1970-01-01T00:07:00Z')
|
165
172
|
|
166
173
|
assert window.last == (
|
167
|
-
'1970-01-01T00:
|
174
|
+
'1970-01-01T00:06:00Z')
|
168
175
|
|
169
176
|
|
170
177
|
|
171
178
|
def test_Windows_cover(
|
172
|
-
windows:
|
179
|
+
windows: Windows,
|
173
180
|
) -> None:
|
174
181
|
"""
|
175
182
|
Perform various tests associated with relevant routines.
|
@@ -179,14 +186,19 @@ def test_Windows_cover(
|
|
179
186
|
|
180
187
|
|
181
188
|
assert windows.ready('two')
|
189
|
+
assert windows.ready('two')
|
190
|
+
assert windows.ready('two')
|
191
|
+
assert windows.pause('two')
|
182
192
|
|
183
193
|
windows.update('two', '+1h')
|
184
194
|
|
185
195
|
assert not windows.ready('two')
|
196
|
+
assert windows.pause('two')
|
186
197
|
|
187
198
|
|
188
199
|
windows = Windows()
|
189
200
|
|
201
|
+
|
190
202
|
params = WindowParams(
|
191
203
|
window=1,
|
192
204
|
start='+1s')
|
@@ -194,10 +206,13 @@ def test_Windows_cover(
|
|
194
206
|
windows.create('fur', params)
|
195
207
|
|
196
208
|
assert not windows.ready('fur')
|
209
|
+
assert windows.pause('fur')
|
197
210
|
|
198
211
|
sleep(2)
|
199
212
|
|
200
213
|
assert windows.ready('fur')
|
214
|
+
assert windows.ready('fur')
|
215
|
+
assert windows.pause('fur')
|
201
216
|
|
202
217
|
windows.delete('fur')
|
203
218
|
|