11from collections .abc import Callable
2- from typing import Any , TypeVar , cast
2+ from typing import Any , TypeVar , cast , overload
33
44import reactivex
55from reactivex import Observable , abc , typing
@@ -114,6 +114,12 @@ def action_dispose(
114114 super ().start ()
115115 return observer
116116
117+ @overload
118+ def create_hot_observable (self , * args : Recorded [_T ]) -> HotObservable [_T ]: ...
119+
120+ @overload
121+ def create_hot_observable (self , * args : list [Recorded [_T ]]) -> HotObservable [_T ]: ...
122+
117123 def create_hot_observable (
118124 self , * args : Recorded [_T ] | list [Recorded [_T ]]
119125 ) -> HotObservable [_T ]:
@@ -134,6 +140,14 @@ def create_hot_observable(
134140 messages = cast (list [Recorded [_T ]], list (args ))
135141 return HotObservable (self , messages )
136142
143+ @overload
144+ def create_cold_observable (self , * args : Recorded [_T ]) -> ColdObservable [_T ]: ...
145+
146+ @overload
147+ def create_cold_observable (
148+ self , * args : list [Recorded [_T ]]
149+ ) -> ColdObservable [_T ]: ...
150+
137151 def create_cold_observable (
138152 self , * args : Recorded [_T ] | list [Recorded [_T ]]
139153 ) -> ColdObservable [_T ]:
@@ -153,7 +167,7 @@ def create_cold_observable(
153167 if args and isinstance (args [0 ], list ):
154168 messages = args [0 ]
155169 else :
156- messages = cast (list [Recorded [_T ]], list (args ))
170+ messages = cast (list [Recorded [Any ]], list (args ))
157171 return ColdObservable (self , messages )
158172
159173 def create_observer (self ) -> MockObserver [Any ]:
0 commit comments