on xenial help sign in
rework flaky genericscopeview pulltorefresh test
5284f5cAndrea Cimitan
tests/qmltests/Dash/tst_GenericScopeView.qml+28−38
@@ -570,53 +570,43 @@ Item {
570 genericScopeView.scope = !genericScopeView.scope;
570 genericScopeView.scope = !genericScopeView.scope;
571 }
571 }
572
572
573− function test_pullToRefresh() {
573+ function test_pullToRefresh_data() {
574− waitForRendering(genericScopeView)
574+ return [
575−
575+ { tag: "Tall window long swipe", shellHeight: units.gu(100), swipeLength: units.gu(70), refresh: true },
576− mouseFlick(genericScopeView,
576+ { tag: "Tall window short swipe", shellHeight: units.gu(100), swipeLength: units.gu(25), refresh: false },
577− genericScopeView.width/2, units.gu(10),
577+ { tag: "Short window", shellHeight: units.gu(30), swipeLength: units.gu(25), refresh: true }
578− genericScopeView.width/2, units.gu(80),
578+ ];
579− true, false)
579+ }
580−
581− var pullToRefresh = findChild(genericScopeView, "pullToRefresh")
582− tryCompare(pullToRefresh, "releaseToRefresh", true)
583
580
584− spy.target = genericScopeView.scope
581+ function test_pullToRefresh(data) {
585− spy.signalName = "refreshed"
582+ var initialHeight = shell.height;
583+ shell.height = data.shellHeight;
584+ waitForRendering(shell);
586
585
587− mouseRelease(genericScopeView)
586+ waitForRendering(genericScopeView);
588− tryCompare(pullToRefresh, "releaseToRefresh", false)
589
587
590− spy.wait()
588+ var pullToRefresh = findChild(genericScopeView, "pullToRefresh");
591− compare(spy.count, 1)
592
589
593− // test short swipe doesn't refresh on tall window
594− mouseFlick(genericScopeView,
595− genericScopeView.width/2, units.gu(10),
596− genericScopeView.width/2, units.gu(20),
597− true, false)
598− mouseRelease(genericScopeView)
599− compare(spy.count, 1)
600−
601− // resize window, repeat the test
602− var initialHeight = shell.height
603− shell.height = units.gu(30)
604− waitForRendering(shell)
605 mouseFlick(genericScopeView,
590 mouseFlick(genericScopeView,
606− genericScopeView.width/2, units.gu(10),
591+ genericScopeView.width/2, units.gu(6),
607− genericScopeView.width/2, units.gu(20),
592+ genericScopeView.width/2, units.gu(6) + data.swipeLength,
608− true, false)
593+ true, false);
609
594
610− tryCompare(pullToRefresh, "releaseToRefresh", true)
595+ tryCompare(pullToRefresh, "releaseToRefresh", data.refresh);
596+
597+ spy.target = genericScopeView.scope;
598+ spy.signalName = "refreshed";
611
599
612− mouseRelease(genericScopeView)
600+ mouseRelease(genericScopeView);
613− tryCompare(pullToRefresh, "releaseToRefresh", false)
601+ tryCompare(pullToRefresh, "releaseToRefresh", false);
614
602
603+ if (data.refresh) {
615− spy.wait()
604+ spy.wait();
616− compare(spy.count, 2)
605+ compare(spy.count, 1);
606+ }
617
607
618− shell.height = initialHeight
608+ shell.height = initialHeight;
619− waitForRendering(shell)
609+ waitForRendering(shell);
620 }
610 }
621
611
622 function test_item_noninteractive() {
612 function test_item_noninteractive() {