1
- from __future__ import annotations
2
-
1
+ import pathlib
3
2
import time
4
3
import weakref
5
4
from dataclasses import dataclass
6
- from typing import TYPE_CHECKING , Callable , ClassVar , Generator
5
+ from typing import TYPE_CHECKING , Callable , ClassVar , Generator , Set , Union
7
6
from unittest .mock import MagicMock , patch
8
7
9
8
import anywidget ._descriptor
15
14
ReprMimeBundle ,
16
15
)
17
16
from anywidget ._file_contents import FileContents
17
+ from anywidget ._protocols import AnywidgetProtocol
18
18
from anywidget ._util import _WIDGET_MIME_TYPE
19
+ from ipykernel .comm import Comm
19
20
from watchfiles import Change
20
21
21
- if TYPE_CHECKING :
22
- import pathlib
23
-
24
- from anywidget ._protocols import AnywidgetProtocol
25
- from ipykernel .comm import Comm
26
-
27
22
28
23
class MockComm (MagicMock ):
29
24
# The only thing we need to do is to be able to relay messages back to
@@ -82,7 +77,7 @@ class Foo:
82
77
_repr_mimebundle_ = MimeBundleDescriptor (autodetect_observer = False )
83
78
value : int = val
84
79
85
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
80
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
86
81
return {"value" : self .value }
87
82
88
83
def __repr__ (self ) -> str :
@@ -122,7 +117,7 @@ def test_state_setter(mock_comm: MagicMock) -> None:
122
117
class Foo :
123
118
_repr_mimebundle_ = MimeBundleDescriptor (autodetect_observer = False )
124
119
125
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
120
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
126
121
return {}
127
122
128
123
def _set_anywidget_state (self , state ) -> None : # noqa: ANN001
@@ -142,7 +137,7 @@ def test_state_setter_binary(mock_comm: MagicMock) -> None:
142
137
class Foo :
143
138
_repr_mimebundle_ = MimeBundleDescriptor (autodetect_observer = False )
144
139
145
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
140
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
146
141
return {}
147
142
148
143
def _set_anywidget_state (self , state : dict ) -> None :
@@ -168,7 +163,7 @@ def test_comm_cleanup() -> None:
168
163
class Foo :
169
164
_repr_mimebundle_ = MimeBundleDescriptor (autodetect_observer = False )
170
165
171
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
166
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
172
167
return {}
173
168
174
169
foo = Foo ()
@@ -192,7 +187,7 @@ def test_detect_observer() -> None:
192
187
class Foo :
193
188
_repr_mimebundle_ = MimeBundleDescriptor ()
194
189
195
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
190
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
196
191
return {}
197
192
198
193
with pytest .warns (UserWarning , match = "Could not find a notifier" ):
@@ -208,7 +203,7 @@ class Foo:
208
203
_repr_mimebundle_ = MimeBundleDescriptor (autodetect_observer = False )
209
204
value : int = 1
210
205
211
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
206
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
212
207
return {"value" : self .value }
213
208
214
209
with pytest .warns (UserWarning , match = ".*is not weakrefable" ):
@@ -340,7 +335,7 @@ class Foo:
340
335
_repr_mimebundle_ = MimeBundleDescriptor (_esm = esm , autodetect_observer = False )
341
336
value : int = 1
342
337
343
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
338
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
344
339
return {"value" : self .value }
345
340
346
341
file_contents = Foo ._repr_mimebundle_ ._extra_state ["_esm" ]
@@ -388,7 +383,7 @@ class Foo:
388
383
_repr_mimebundle_ = MimeBundleDescriptor (bar = bar , autodetect_observer = False )
389
384
value : int = 1
390
385
391
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
386
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
392
387
return {"value" : self .value }
393
388
394
389
file_contents = Foo ._repr_mimebundle_ ._extra_state ["bar" ]
@@ -415,7 +410,7 @@ class Foo:
415
410
autodetect_observer = False ,
416
411
)
417
412
418
- def _get_anywidget_state (self , include : set [ str ] | None ): # noqa: ANN202, ARG002
413
+ def _get_anywidget_state (self , include : Union [ Set [ str ], None ] ): # noqa: ANN202, ARG002
419
414
return {}
420
415
421
416
foo = Foo ()
0 commit comments