U vâ’iGã@s²ddlZddlZddlmZmZmZmZddlmZddlm Z m Z m Z ddl m Z ddlmZedƒZeed œd d „ZGd d „d eeƒZGdd„deeƒZGdd„dƒZdS)éN)ÚAnyÚGenericÚTypeVarÚUnion)Útyping)Ú OnCompletedÚOnErrorÚOnNexté)ÚRecorded©Ú SubscriptionÚ_T)ÚiÚreturncCsF|dkr dStt t |¡¡ƒ}td|dƒD]}||s.dSq.dS)zTests if number is prime or notr FéT)ÚintÚmathÚfloorÚsqrtÚrange)rÚ_maxÚj©rúO/opt/alt/python38/lib/python3.8/site-packages/reactivex/testing/reactivetest.pyÚis_primesrc@s2eZdZejeddœdd„Zeedœdd„Z dS)ÚOnNextPredicateN)Ú predicatercCs ||_dS©N©r©ÚselfrrrrÚ__init__szOnNextPredicate.__init__©ÚotherrcCs2||kr dS|dkrdS|jdkr&dS| |j¡S)NTFÚN)ÚkindrÚvalue©r!r$rrrÚ__eq__!s zOnNextPredicate.__eq__© Ú__name__Ú __module__Ú __qualname__rZ Predicaterr"rÚboolr)rrrrrsrc@s0eZdZejedœdd„Zeedœdd„Z dS)ÚOnErrorPredicatercCs ||_dSrrr rrrr",szOnErrorPredicate.__init__r#cCs2||kr dS|dkrdS|jdkr&dS| |j¡S)NTFÚE)r&rÚ exceptionr(rrrr)/s zOnErrorPredicate.__eq__Nr*rrrrr/+sr/c@s†eZdZdZdZdZeeee edœdd„ƒZ eee e e ejfe edœdd „ƒZeee ed œd d „ƒZeeeed œdd„ƒZdS)Ú ReactiveTestédéÈiè)Úticksr'rcCs(t|tjƒrt|t|ƒƒSt|t|ƒƒSr)Ú isinstanceÚtypesÚ FunctionTyper rr )r5r'rrrÚon_next>s zReactiveTest.on_next)r5ÚerrorrcCs(t|tjƒrt|t|ƒƒSt|t|ƒƒSr)r6r7r8r r/r)r5r:rrrÚon_errorEs zReactiveTest.on_error)r5rcCs t|tƒƒSr)r r)r5rrrÚ on_completedNszReactiveTest.on_completed)ÚstartÚendrcCs t||ƒSrr )r=r>rrrÚ subscribeRszReactiveTest.subscribeN)r+r,r-ÚcreatedZ subscribedZdisposedÚ staticmethodrrr r9rÚ ExceptionÚstrr7r8rr;r<r r?rrrrr29sþr2)rr7rrrrrZ reactivexZreactivex.notificationrrr Zrecordedr Z subscriptionr rrr.rrr/r2rrrrÚs