Updated test suite following platform abstraction change 26/26726/1
authorDavid Steele <david.steele@partner.samsung.com>
Thu, 28 Aug 2014 10:50:36 +0000 (11:50 +0100)
committerDavid Steele <david.steele@partner.samsung.com>
Thu, 28 Aug 2014 10:50:36 +0000 (11:50 +0100)
[Problem] Core::Update() api has changed
[Solution] Update test harness to match.

Change-Id: I2ce3c9ec4377ba60a485e8282199967d1f04374b
Signed-off-by: David Steele <david.steele@partner.samsung.com>
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.cpp
automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-application.h

index ea7e48e8683f0b1a88a6c7e7a939894e1af69ec0..c2680b229b4a5ba368f247b761de8bfc3dbe47ee 100644 (file)
@@ -29,7 +29,8 @@ TestApplication::TestApplication( size_t surfaceWidth,
   mSurfaceWidth( surfaceWidth ),
   mSurfaceHeight( surfaceHeight ),
   mFrame( 0u ),
-  mDpi( horizontalDpi, verticalDpi )
+  mDpi( horizontalDpi, verticalDpi ),
+  mLastVSyncTime(0u)
 {
   Initialize();
 }
@@ -142,15 +143,23 @@ void TestApplication::SetSurfaceWidth( unsigned int width, unsigned height )
   mCore->SurfaceResized( mSurfaceWidth, mSurfaceHeight );
 }
 
-bool TestApplication::Render( unsigned int intervalMilliseconds  )
+void TestApplication::DoUpdate( unsigned int intervalMilliseconds )
 {
-  // Update Time values
-  mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds );
   unsigned int seconds(0u), microseconds(0u);
   mPlatformAbstraction.GetTimeMicroseconds( seconds, microseconds );
+  mLastVSyncTime = ( seconds * 1e3 ) + ( microseconds / 1e3 );
+  unsigned int nextVSyncTime = mLastVSyncTime + 16;
+
+  // Update Time values
+  mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds );
+
+  float elapsedSeconds = intervalMilliseconds / 1e3f;
+  mCore->Update( elapsedSeconds, mLastVSyncTime, nextVSyncTime, mStatus );
+}
 
-  mCore->VSync( mFrame, seconds, microseconds );
-  mCore->Update( mStatus );
+bool TestApplication::Render( unsigned int intervalMilliseconds  )
+{
+  DoUpdate( intervalMilliseconds );
   mCore->Render( mRenderStatus );
 
   mFrame++;
@@ -165,14 +174,7 @@ unsigned int TestApplication::GetUpdateStatus()
 
 bool TestApplication::UpdateOnly( unsigned int intervalMilliseconds  )
 {
-  // Update Time values
-  mPlatformAbstraction.IncrementGetTimeResult( intervalMilliseconds );
-  unsigned int seconds(0u), microseconds(0u);
-  mPlatformAbstraction.GetTimeMicroseconds( seconds, microseconds );
-
-  mCore->VSync( mFrame, seconds, microseconds );
-  mCore->Update( mStatus );
-
+  DoUpdate( intervalMilliseconds );
   return mStatus.KeepUpdating();
 }
 
index 4084f2dc4dc3e22b4a45dd50733c14b5f65d113e..bcc2dd8dd85b5df48ae750326ec2b004ceb679b4 100644 (file)
@@ -76,6 +76,9 @@ public:
   bool RenderOnly( );
   void ResetContext();
 
+private:
+  void DoUpdate( unsigned int intervalMilliseconds );
+
 protected:
   TestPlatformAbstraction   mPlatformAbstraction;
   TestRenderController      mRenderController;
@@ -93,6 +96,7 @@ protected:
   unsigned int mFrame;
 
   Vector2 mDpi;
+  unsigned int mLastVSyncTime;
 };
 
 } // Dali