+ portraitView.SetProperty(PageTurnView::Property::CURRENT_PAGE_ID, 10);
+ pageIndex = 9; // will turn the previous page back
+ isTurningForwards = false;
+ start = size * 0.25f;
+ direction = Vector2(size.x * 0.05f, 0.f);
+ PerformGestureDiagonalSwipe(application, start, direction, 4, time, true, false);
+ DALI_TEST_CHECK(callbackPanStarted.mSignalVerified);
+ DALI_TEST_CHECK(!callbackTurnStarted.mSignalVerified);
+ DALI_TEST_CHECK(!callbackTurnFinished.mSignalVerified);
+ DALI_TEST_CHECK(!callbackPanFinished.mSignalVerified);
+
+ PerformGestureDiagonalSwipe(application, start + direction * 5.f, direction, 5, time, false, true);
+ DALI_TEST_CHECK(callbackTurnStarted.mSignalVerified);
+ DALI_TEST_CHECK(callbackPanFinished.mSignalVerified);
+ DALI_TEST_CHECK(!callbackTurnFinished.mSignalVerified);
+
+ Wait(application, 1000);
+
+ DALI_TEST_CHECK(callbackTurnFinished.mSignalVerified);
+ DALI_TEST_EQUALS(portraitView.GetProperty(PageTurnView::Property::CURRENT_PAGE_ID).Get<int>(), 9, TEST_LOCATION);
+ END_TEST;
+}
+
+int UtcDaliPageTurnLanscapeViewSignals(void)
+{
+ ToolkitTestApplication application;
+
+ tet_infoline(" UtcDaliPageTurnLanscapeViewSignals ");
+
+ application.GetGlAbstraction().SetCheckFramebufferStatusResult(GL_FRAMEBUFFER_COMPLETE);
+ /***
+ * -----------------
+ * | |
+ * |---------------|
+ * |bookboo|bookboo|
+ * |kbookbo|kbookbo|
+ * |okbookb|okbookb|
+ * |ookbook|ookbook|
+ * |bookboo|bookboo|
+ * |---------------|
+ * | |
+ * ----------------
+ */
+
+ TestPageFactory factory;
+ Vector2 stageSize = application.GetScene().GetSize();
+ PageTurnView landscapeView = PageTurnLandscapeView::New(factory, Vector2(stageSize.x * 0.5f, stageSize.x * 0.8f));
+ landscapeView.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER);
+ application.GetScene().Add(landscapeView);
+
+ // Render and notify
+ application.SendNotification();
+ application.Render(RENDER_FRAME_INTERVAL);
+
+ // [0]: testing PageTurnStartedSignal; [1]: testing PageTurnFinishedSignal
+ // [2]: testing PagePanStartedSignal; [3]: testing PagePanFinishedSignal
+ bool signalVerified[4] = {false, false, false, false};
+ PageTurnView currentView;
+ unsigned int pageIndex;
+ bool isTurningForwards;
+
+ PageSignalCallback callbackTurnStarted(signalVerified[0], currentView, pageIndex, isTurningForwards);
+ landscapeView.PageTurnStartedSignal().Connect(&callbackTurnStarted, &PageSignalCallback::PageTurnSignalCallback);
+
+ PageSignalCallback callbackTurnFinished(signalVerified[1], currentView, pageIndex, isTurningForwards);
+ landscapeView.PageTurnFinishedSignal().Connect(&callbackTurnFinished, &PageSignalCallback::PageTurnSignalCallback);
+
+ PageSignalCallback callbackPanStarted(signalVerified[2], currentView, pageIndex, isTurningForwards);
+ landscapeView.PagePanStartedSignal().Connect(&callbackPanStarted, &PageSignalCallback::PagePanSignalCallback);
+
+ PageSignalCallback callbackPanFinished(signalVerified[3], currentView, pageIndex, isTurningForwards);
+ landscapeView.PagePanFinishedSignal().Connect(&callbackPanFinished, &PageSignalCallback::PagePanSignalCallback);
+
+ DALI_TEST_CHECK(!callbackTurnStarted.mSignalVerified);
+ DALI_TEST_CHECK(!callbackTurnFinished.mSignalVerified);
+ DALI_TEST_CHECK(!callbackPanStarted.mSignalVerified);
+ DALI_TEST_CHECK(!callbackPanFinished.mSignalVerified);
+
+ currentView = landscapeView;
+
+ //-----Test 1: pan 10 frames from position(stageSize.x * 0.85f, stageSize.y*0.5) to position(stageSize.x * 0.45f, stageSize.y*0.5-stageSize.x * 0.3f), page 0 will be turned forward----
+ pageIndex = 0;
+ isTurningForwards = true;
+ // Do a pan to the left.
+ uint32_t time = 0;
+ Vector2 start = Vector2(stageSize.x * 0.85f, stageSize.y * 0.5);
+ Vector2 direction = Vector2(-stageSize.x * 0.04f, -stageSize.x * 0.03f);
+
+ DALI_TEST_EQUALS(landscapeView.GetProperty(PageTurnView::Property::CURRENT_PAGE_ID).Get<int>(), 0, TEST_LOCATION);
+ PerformGestureDiagonalSwipe(application, start, direction, 5, time, true, false);
+ DALI_TEST_CHECK(callbackTurnStarted.mSignalVerified);
+ DALI_TEST_CHECK(!callbackTurnFinished.mSignalVerified);
+ DALI_TEST_CHECK(callbackPanStarted.mSignalVerified);
+ DALI_TEST_CHECK(!callbackPanFinished.mSignalVerified);
+
+ PerformGestureDiagonalSwipe(application, start + direction * 5.f, direction, 5, time, false, true);
+ DALI_TEST_CHECK(!callbackTurnFinished.mSignalVerified);
+ DALI_TEST_CHECK(callbackPanFinished.mSignalVerified);
+
+ time += Wait(application, 1000);
+ DALI_TEST_CHECK(callbackTurnFinished.mSignalVerified);
+ // the page is turned over
+ DALI_TEST_EQUALS(landscapeView.GetProperty(PageTurnView::Property::CURRENT_PAGE_ID).Get<int>(), (int)(pageIndex + 1), TEST_LOCATION);
+
+ //---Test 2: pan from position(stageSize.x * 0.15f, stageSize.y*0.5) to position(stageSize.x * 0.45f, stageSize.y*0.5) page 4 will be turned back---
+ callbackTurnStarted.Reset();
+ callbackTurnFinished.Reset();
+ callbackPanStarted.Reset();
+ callbackPanFinished.Reset();