Skip to content

Releases: passsy/spot

v0.17.0

03 Jan 18:14
ea536ca
Compare
Choose a tag to compare
  • Timeline is now generated with Jaspr #76
  • New: act.tapAt() #80
  • New Timeline.addEvent() now returns the TimelineEventId id
  • New Timeline.updateEvent(id) and Timeline.removeEvent(id)
  • Fix: Added events to timeline while being off #88
  • Fix: Export stateProp #93
  • Improved screenshot detail page in timeline #91, #92

v0.16.0

26 Nov 02:16
Compare
Choose a tag to compare
  • Add snapshotState<S>()
    final state = spot<MyContainer>().snapshotState<MyContainerState>()
  • Add snapshotRenderBox()
  • Export WidgetPresence
  • Add @useResult to .atMost(N), .atLeast(N), .amount(N) and .existsAtMostNTimes(N) to prevent missing assertions
  • Fix existsAtLeastNTimes dumping the widget tree to console
  • Fix image rendering with TimelineMode.always
  • Add Timeline to /README.md
  • Add act to /README.md

v0.15.0

21 Nov 16:39
Compare
Choose a tag to compare
  • Add loadAppFonts() to display your app fonts on screenshots #66
  • Add loadFont() to load a fonts from a file. Useful when your app depends on preinstalled system fonts (loadFont('Comic Sans', [r'C:\Windows\Fonts\comic.ttf'])) #66
  • New direct access to properties from WidgetSelector #71
    • spot<MyWidget>().getWidgetProp(widgetProp('color', (widget) => widget.color));
    • spot<_MyContainer>().getStateProp(stateProp<String, _MyContainerState>('innerValue', (s) => s.innerValue));
    • spot<_MyContainer>().getRenderObjectProp(renderObjectProp<Size, RenderBox>('size', (r) => r.size));
  • New getStateProp and stateProp to access state properties #71
    spot<_MyContainer>().existsOnce().getStateProp(stateProp('innerValue', (_MyContainerState s) => s.innerValue));
  • New timeline mode TimelineMode.always to always print a timeline after each test #68
  • Deprecate TimelineMode.record in favor of TimelineMode.reportOnError (which is the default) #68
  • Timeline now shows partial tap warnings #69
  • Never show big widget tree dumps in console, only in Timeline HTML report #70
  • act.tap() now shows a Crosshair on the screenshot
  • Fix code samples of whereWidgetProp(), whereElementProp() and whereRenderObjectProp() #67

v0.14.0

07 Nov 02:00
Compare
Choose a tag to compare
  • New: Timeline! Failing tests now print a timeline with screenshots of all interactions (actions and assertions) as HTML report #57
  • act.tap now checks for multiple tappable position when the center is not tappable for some reason #60
  • act.tap now reports a useful error when the widget is 0px/0px or invisible #61
  • Become Compatible with Flutter 3.27 and add nightly tests against master

v0.13.0

07 Nov 02:00
Compare
Choose a tag to compare
  • Add act.dragUntilVisible() #59

v0.12.1

16 May 11:26
Compare
Choose a tag to compare
  • Support for Flutter 3.22
  • Remove unused dependencies #55

v0.4.3

16 May 11:13
Compare
Choose a tag to compare
  • Remove unused dependencies. Fixes incompatibility with latest test_api versions #55

v0.3.3

16 May 11:12
Compare
Choose a tag to compare
  • Widen test_api range to support Flutter 3.22

v0.12.0

22 Mar 10:50
Compare
Choose a tag to compare
  • Breaking Offstage support. By default Offstage widgets are not found by spot<W>(). Use spotOffstage().spot<W>() to find them. spotAllWidgets() returns onstage and offstage widgets. Use .overrideWidgetPresence(WidgetPresence.offstage) to modify a WidgetSelector to search for offstage, onstage or combined #45
  • New: act.enterText(spot<TextField>(), 'Hello World!') allows to enter text into a EditableText #51
  • Negating parents is not yet supported (spot<ListView>().withParent(spot<Scaffold>().atMost(0))). It now throws to prevent unexpected behavior. #50
  • act.tap(spot<ElevatedButton>()) now pumps automatically after the tap #52

v0.11.0

19 Feb 01:43
Compare
Choose a tag to compare
  • Add support for Flutter 3.20
  • Update checks to 0.3.0 #48
  • Remove deprecated property selector from withProp() and hasProp(). Use elementSelector instead
  • Widen test_api version range to include 0.7.X