patrol 0.6.10 
patrol: ^0.6.10 copied to clipboard
Simple yet powerful Flutter-native UI testing framework eliminating limitations of flutter_test, integration_test, and flutter_driver.
0.6.10 #
- Make 
$()accept aWidgetas an argument (#402) 
0.6.9 #
- Remove the unused 
appIdargument from most methods (#399) - Rename 
getNativeWidgets()togetNativeViews()(#399) 
0.6.8 #
- Fix handling permission prompts now working in some edge cases (#383)
 
0.6.7+1 #
- Fix package score on pub.flutter-io.cn (#375)
 
0.6.7 #
- Implement enabling and disabling cellular on iOS (#371)
 
0.6.6 #
- Make 
openApp()open the app under test when noappIdis passed (#338) - Implement 
enableWifi(),disableWifi(), andopenRecentApps()on iOS (#338) - Completely rewrite communication with native automation servers (#338)
 
0.6.5 #
- Implement enabling and disabling dark mode on iOS (#345)
 
0.6.4+1 #
- Fix spelling of "cellular" (was "celluar") (#336)
 - Fix a typo in docs (#337)
 - Fix README and docs mentioning the removed 
Patrolclass (#349) 
0.6.4 #
- A bunch of post-release fixes (#330)
 
0.6.3 #
- Stop re-exporting 
package:flutter_test(#308) 
0.6.2 #
- Don't require 
hostandportto be defined inpatrol.tomlor passed in as command-line arguments (#301) - Rename 
PatroltoNativeAutomatorand embed it inPatrolTester(#297) - Print cleaner, more readable logs when native action fails (#295)
 
0.6.1 #
- Fix handling native permission request dialogs on older Android versions (#260)
 - Populate 
homepagefield inpubspec.yaml(#254) 
0.6.0 #
- Rename to patrol (#258)
 - Remove 
sleepfromMaestroTestConfig. Use the new--waitargument available in the CLI (#251) 
0.5.5 #
- Bring more functionality to iOS (#246)
- Implement native 
tap(),enterText(), andhandlePermission()methods on iOS Maestro.forTest(): add optionalpackageNameandbundleIdarguments
 - Implement native 
 
0.5.4 #
- Add support for handling native permission request dialogs on Android (#232)
 - Attempt to fix a weird issue with scroll not working in some rare cases (#237)
 - Re-export 
package:flutter_test 
0.5.3 #
- Make 
MaestroFinder.textgetter more robust 
0.5.2 #
- Fix a problem with 
StateErrorbeing thrown when MaestroTester.dragUntilVisible found more than 1 finder after dragging to it (#228) 
0.5.1 #
- Some fixes to the scrolling and dragging
 
0.5.0+1 #
- Set minimum Dart version to 2.17 (#224)
 
0.5.0 #
- 
Revamp scrolling and dragging (#217)
- New 
MaestroTester.dragUntilExists() - Fixed 
MaestroTester.dragUntilVisible()'s behavior - New 
MaestroTester.scrollUntilExistsmethod - New 
MaestroTester.scrollUntilVisiblemethod MaestroFinder.dragTowas renamed toMaestroFinder.scrollToand now also scrolls to widgets that are not yet built (e.g in a lazily-builtListView)
 - New 
 - 
Allow for more fine-grained control over timeouts (#191)
settleTimeout, which is used forMaestroTester.pumpAndSettle(which forwards it toWidgetTester.pumpAndSettle)existsTimeout, which is used forMaestroFinder.waitUntilExistsvisibleTimeout(previouslyfindTimeout), which is used byMaestroFinder.waitUntilVisible(which is then used internally byMaestroFinder.tap()andMaestroFinder.enterText().
 
0.4.6 #
- Downgrade 
package:freezedto v1 beacuse customer project is not able to update to v2 
0.4.5 #
- Create 
MaestroTestConfigclass which is accepted bymaestroTestfunction. Use it to share common configuration across all tests - Upgrade 
package:freezedto v2. Dependent projects should also make this change 
0.4.4 #
MaestroFinder:
- Rename 
visiblemethod towaitUntilVisible - Add 
waitUntilExistsmethod - Add 
existsgetter - Add 
visiblegetter 
0.4.3 #
- Add 
MaestroFinder.dragTo - Remove unused 
MaestroTester.dragandMaestroTester.dragFrom 
0.4.2 #
- Convert 
MaestroFinder.visiblegetter to a method, which now also takes a timeout - Rename 
MAESTRO_ARTIFACT_PATHenvironment variable to `MAESTRO_CACHE - Fix 
MaestroTester.dragUntilVisiblenot waiting for the scrollable to appear - Fix 
MaestroFinder.allCandidatesreturning incorrect results 
0.4.1 #
- Throw 
MaestroFinderFoundNothingExceptionwhen [MaestroFinder.visible] doesn't find any widget during [MaestroTester.findTimeout] 
0.4.0 #
MaestroFinder:
- Now 
tap()andenterText()wait for the widget to become visible. The timeout can be configured by settingfindTimeoutinmaestroTest() - Remove 
indexparameter fromtap()andenterText(). The new way to select the widget to be tapped is to useat()before tapping. Same goes for entering text - Add 
bool andSettleparameter tomaestroTestfunction. This lets you globally configure whether to callpumpAndSettleafter actions such astap()orenterText() - Refactor 
MaestroTester.dragUntilVisibleto be simpler to use - Rename 
withDescendant()tocontaining() 
Native:
- Make 
Maestro.openNotifications()andMaestro.openQuickSettings()more robust 
0.3.3 #
- Make it possible to pass Flutter's 
Finderto$ - Make 
MaestroFinder.first,MaestroFinder.last,MaestroFinder.at()returnMaestroFinder, notFinder 
0.3.2 #
- 
Improve selector engine:
- Make it possible to pass a 
KeyasmatchingtoMaestroTester.call(dynamic matching)andMaestroFinder.$(dynamic matching) 
 - Make it possible to pass a 
 - 
Add
sleepparameter formaestroTestmethod - 
Make
WidgetTester's forwarded methods inMaestroTesteraccept less arguments - 
Add more in-code documentation
 
0.3.1 #
- 
Improve selector engine:
- Make it possible to pass a 
MaestroFinderasmatchingtoMaestroTester.call(dynamic matching)andMaestroFinder.$(dynamic matching) - Fix a bug which caused chaining 
MaestroFinders (e.g$(Scaffold).$(Container).$(#someText)) to not work. 
 - Make it possible to pass a 
 - 
Add more in-code documentation and improve README
 
0.3.0 #
- Add selector engine
 
0.2.0 #
- 
Introduce
Selectorclass, which can be passed intoMaestro.tap(selector). - 
Add more platform functionality:
Maestro.enableWifi()andMaestro.disableWifi()Maestro.enableCellular()andMaestro.disableCellular()Maestro.enableDarkMode()andMaestro.disableDarkMode()Maestro.getNotifications(),Maestro.getFirstNotification(), andMaestro.tapOnNotification(int index)
 - 
Make
Maestro.forTest()automatically callIntegrationTestWidgetsFlutterBinding.ensureInitialized() - 
Fix many smaller issues
 
0.1.4 #
- Allow for running on many devices simultaneously
 - Rename class 
AutomatortoMaestro - Simpified test-side initialization. Now all you need is 
Maestro.forTest() - Simpified driver-side initialization. Now all you need is
Maestro.forDriver() 
0.1.3 #
- Add support for enabling/disabling Bluetooth
 
0.1.2 #
- Be more noisy when an error occurs
 
0.1.1 #
- Fix minor logging bug
 
0.1.0 #
- Add basic means of controlling platform-native Widgets (
TextView,EditText, andButtonon Android). This also applies to WebView. - Add enabling and disabling of Wi-Fi, Cellular, and Night Mode
 - Improve stability
 
0.0.6 #
- Set minimum Dart version to 2.16
 - Fix links to 
package:leancode_lintin README 
0.0.5 #
- Update broken link in README.
 
0.0.4 #
- Update README
 
0.0.3 #
- Rename from 
maestrotomaestro_test 
0.0.2 #
- Split 
maestroandmaestro_cliinto separate packages 
0.0.1 #
- Initial version