I'm trying to write some tests for my application, that uses rxSwift. In particular, I'd like to test, writing unit tests, a webview. I'm using RxWebKit to get observables over some properties like navigationCompleted or NavigationFailed and so on.
For example: webView.rx.didFailNavigation.asDriver(). These observables are given as input to my viewModel.
But i'm not sure how to write these tests to simulate, for example, a failed navigation and so an emission of this kind of observable.
In the specific case, i want to simulate a Driver<(webView: WKWebView, navigation: WKNavigation, error: Error)> (that is the same type of the one associated to webView.rx.didFailNavigation.asDriver()).
I understood that to simulate the emission i need to create a scheduler and call the createHotObservable method, but what have I to pass to Recorderd.next(150, element) as element in the specific case to simulate the fail of the webview?
can someone give me a simple example?
How to test a WKWebView using RxWebKit?
352 views Asked by Giuseppe Pennisi At
1
There are 1 answers
Related Questions in IOS
- URLSession requesting JSON array from server not working
- Incorrect display of LinearGradientBrush in IOS
- Module not found when building flutter app for IOS
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Occasional crash at NSURLSessionDataTask dataTaskWithRequest:completionHandler:
- Expo Deep linking on iOS is not working (because of Google sign-in?)
- On iOS, the keyboard does not offer a 6-character SMS code
- Hi, there is an error happened when I build my flutter app, after I'm installing firebase packages occurs that error
- The copy/paste functionalities don't work only on iOS in the Flutter app
- Hide LiveActivityIntent Button from Shortcuts App
- While Running Github Actions Pipeline: No Signing Certificate "iOS Development" found: No "iOS Development" signing certificate matching team ID
- Actionable notification api call not working in background
- Accessibility : Full keyboard access with scroll view in swiftui
- There is a problem with the request entity - You are not allowed to create 'iOS' profile with App ID 'XXXX'
- I am getting "binding has not yet been initialized" error when trying to connect firebase with flutter
Related Questions in SWIFT
- Navigate after logged in with webservice
- URLSession requesting JSON array from server not working
- When using onDrag in SwiftUI on Mac how can I detect when the dragged object has been released anywhere?
- Protect OpenAI key using Firebase function
- How to correct error: "Cannot convert value of type 'MyType.Type' to expected argument type 'Binding<MyType>'"?
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Using @Bindable with a Observable type in SwiftUI
- How to make a scroll view of 9 images in a forEach loop open on image 6 if image 6 is clicked on from a grid?
- Using MTLPixelFormat.rgba16Float results in random round-off errors
- Search and highlight text of current text in PDFKit Swift
- How is passing a function as a parameter related to escaping autoclosure?
- Actionable notification api call not working in background
- Custom layout occupies all horizontal space
- Is it possible to fix slow CKAsset loading on Cloudkit?
- Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value - MapView.isMyLocationEnabled
Related Questions in RX-SWIFT
- How to use RxSwift to draw the UICollectionView cells according to the number of data
- Why is the action of 'tapping a button' also considered an asynchronous event?
- Why doesn't UITextfield bind value when selected `My Own Password` after field is autofilled?
- How to set collectionView sizeForItemAt from Observable RxSwift
- Failed to load linked library swiftQuartzCore of module RxSwift - errors:
- It is valid Accessing BehaviorRelay value directly for UITableView in RxSwift?
- how to turn multiple observables into a completable?
- RxSwift: How to create an observable using two other observables (one of which relies on the other)?
- How to emit inital data and then combine with new using RxSwift?
- How to return an Observable sequence with optional value
- RxSwift .debounce, .throttle for pagination
- Crashing on `func unsubscribe(_ key: DisposeKey)` of `ReplaySubject` in `RxSwift`?
- Unable to infer closure type without a type annotation. Swift 5, XCode 15.0, RxSwift
- Cannot call value of non-function type '[Observable<Event>.Type]'
- How can I change the height of the BottomPopUp in RxSwift
Related Questions in RXTEST
- How to test multiple events in RxTest
- RxSwift/RxTest how to test error response
- RxSwift/RxTest How to test async function with Observable return
- Embedding/excluding certain SPM libraries in specific build configuration
- How can we test class which generates random states, and which can not generate same states twice?
- Testing ViewModel with Rx and GIPHY
- XCTAssertEqual fails when using createColdObservable for RxTest
- RxTest is still using libswiftXCTest.dylib
- How to test a WKWebView using RxWebKit?
- RxSwift TestScheduler for two sources
- How to test a private function inside an RxSwift observer?
- Mocking and Validating Results in RxSwift Unit Testing
- RxTest - How to compare Event<Void> as Void is not Equatable
- Is `tearDown` calling necessary?
- Unable to access toBlocking() in xctest
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
This is a bit too general question so I'll give a more general answer:
You need to look into testing with RxSwift, either using:
for example:
For example, here's a good point to start:
http://rx-marin.com/post/rxblocking-part1/