- TempuraTesting: Fix device orientation for Xcode 13.0 also for ViewTestCase and UIViewControllerTestCase. #130
- TempuraTesting: Fix orientation for Xcode 13.0. #129
- Allow to init Navigation with custom
RoutableProvider. #125
- Fix possible initialization of the ViewModel with an older state.
- Support for Tempura 7. #122
- [BREAKING] Remove deprecated global
testfunctions. TheViewTestCaseAPI should be used instead. #114 - [BREAKING] Remove
UITestCasetypealias.ViewTestCaseshould be used instead. No other changes should be necessary. #114 - [BREAKING] Use correct screen size on orientation change. This is a breaking change that makes screenSize of Context and VCContext optional. #110
- Make TempuraTesting build on Xcode 12.5 #111
- Migrate from Xcake to Tuist. #117
- Replace
UIGraphicsBeginImageContextWithOptionswithUIGraphicsImageRenderer. #108
- [BREAKING] Bump to Katana 6. #112
- [BREAKING] Add Hydra (
>= 2.0.6) as an explicit dependency. #113 - [BREAKING] Remove deprecated
dispatchandunsafeDispatchforNavigationSideEffectonAnyStoreandAnySideEffectContext. Katana's normal dispatch acceptingDispatchables should be used instead. #114 - [BREAKING] Remove
UIView.universalSafeAreaInsetsin favor ofUIView.safeAreaInsets. #118 - [BREAKING] Remove deprecated
__unsafeDispatchand__unsafeAwaitDispatchforNavigationSideEffectonViewController. The base methods acceptingDispatchables should be used instead. #114 - Migrate from Xcake to Tuist. #117
- Add validation of UITests keys uniqueness #103
- Fix possible exception when a state update is triggered while a view controller is being dismissed #104
- Add NavigationWitness #99
- Update to Tempura 6
- [BREAKING] bumped minDeploymentTarget from
9.0to11.0
- Update to Katana 5
- [BREAKING] bumped minDeploymentTarget from
9.0to11.0 - Add CustomDebugStringConvertible extension to navigation actions
- Reverse
.popToViewControllerNavigationInstruction to find the lastRoutableinstead of the first (in case the samerouteIdentifieris present in the stack)
- Deprecated all dispatch helpers to
AnyStoreandAnySideEffectContextforNavigationSideEffects - Deprecated
__unsafeAwaitDispatchfromViewControllerforNavigationSideEffects - Added
__unsafeDispatchfor non-returning sideeffects inViewController
- Update to Katana 4
- Update to Katana 4
- Make the ViewController
dispatchmethod returns Void - Add to the ViewController
__unsafe_dispatchmethod that returns a promise - Expose a non-generic dispatch for ViewController
- Fix issue with
screenSizenot set on the View being tested.
- Fix issue with
configure(:::)being called too early forViewControllerTestCases with aViewControllerWithLocalState.
- Add
optionalCustomtoNavigationInstruction. WithoptionalCustomyou can specify to handle a navigation instruction only if some conditions are matched.
ViewControllerTestCasewill now wait for view to be ready after configureViewControllerTestCasewill now let you testUIViewControllers with aModellableViewother thanViewControllers.- Introduce
UIViewControllerTestCaseto testUIViewControllers withUIViews.
- Make
CustomRouteInspectablesandRouteInspectablepublic
- Add support for rendering Safe Area Insets in UITests
- Add transition method to the Containment API
- Remove defaults from
UITestCase
- Make closure in
installRootescaping
- Added
popToRootViewControllerandpopToViewControllerto Navigation Instructions - Fixed broken UITest filename for a scrollable content's snapshot
- Fixed unresolving promise if calling
hideon a view that is not in thecurrentRoutables ViewControllerWithLocalState.init(store:connected:)is now private
- Add support for Swift 5.0
- Remove
init()requirement forLocalStateprotocol - Force
ViewControllerWithLocalStateto specify aLocalStatein theinit(...) RootInstaller'sinstallRoot(identifier:context:completion)now returns aBoolvalue- If there are no Routables handing a
Show()with a specific identifier, theNavigatorwill ask theRootInstallerbefore raising a fatalError().
- Fix UITests by using the
collatorIdentifierinstead of thelanguageCode
- Use Katana 3.0
- Add support for UITests with ViewController containment
- Add support for ViewController containment
- Add support for Swift 4.2
- Added completion callbacks for
UINavigationControllermethods likepushViewController,popViewController,popToRootViewController,popToViewController
- Added ability to create UI tests for scrollViews content
- Fixed issue with UI tests of ViewControllers inside other controllers
- Add support for orientation change in
UITestCase
- UI tests folder structure uses the locale of the app to support multiple language UITests
- Introduces new
UITestCaseAPI that are easier to use and unify various approaches that used to coexist until now - Deprecates UITest APIs
- UI tests folders are consistent when landscape screenshots are involved. A screenshot from an iPhone X in portrait will be in the same directory of a screenshot of an iPhone X in landscape
- fixed LocalURLProtocol implementation to support DownloadTask and similar approaches
- Implementation of the universalSafeAreaInsets for every UIView and not only for ViewControllerModellableView. In case of a UIView down in the hierarchy, the universalSafeAreaInsets will be the intersection between the main safeArea and the actual frame of the view.
- UITests snapshots are now saved under resolution subdir
- Added failable init for ViewModelWithState and ViewModelWithLocalState
- Added Navigation Helpers
- Removed unused Live Reload feature
- Improve code for connect
- Fix issues with ViewControllerWithLocalState
- Introduce 'shouldConnectWhenVisible' and 'shouldDisconnectWhenInvisible' properties for ViewController
- Prevent the View from loading before it's actually needed
- Fix bug in tempuraDismiss
- Simplified generics for
ViewController, now it is only generic for theModellableView - Deprecated
actionlabel indispatch()method - Removed forced unwrapping inside
Navigator - Fixed
willSetmethod invocation - Added tests
- Improved the connect inner workings for
ViewControllerandViewControllerWithLocalState - Fixed disconnected ViewControllersWithLocalState that were connecting on localState change
- Fixed ViewController unsubscribing triggering updates
- Improved type safety on ViewController Store and View
- viewModel is now optional in ModellableView and ViewController
- willUpdate and didUpdate methods are now returning new and old viewModels as parameters
- Implemented Style Standardisation. See this pr for more information
- Update to swift 4.0
- Adds
tempuraSafeAreaInsetsandstatusBarHeightas view's properties. See this pr for more information - Fix Main Thread issue with Hide navigation action