X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Fdali-toolkit-test-utils%2Ftoolkit-timer.cpp;h=2259719908e71cf73be249a325254e83a52137cb;hp=4ab6a57090c6633ee3311701025eb9984025b069;hb=d07dc4c4a6067ba3080184d862bca40a90d1789c;hpb=d5e3ed5f5b1c8fdba3ae97ead8729620f54b3836 diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-timer.cpp b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-timer.cpp index 4ab6a57..2259719 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-timer.cpp +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-timer.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2016 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,7 +20,7 @@ // INTERNAL INCLUDES #include #include -#include +#include namespace Dali { @@ -34,12 +34,18 @@ class Timer; typedef IntrusivePtr TimerPtr; +Dali::Timer::TimerSignalType gTickSignal; +int gTimerCount = 0; + /** * Implementation of the timer */ class Timer : public BaseObject { public: + void MockEmitSignal(); + +public: static TimerPtr New( unsigned int milliSec ); Timer( unsigned int milliSec ); virtual ~Timer(); @@ -53,7 +59,7 @@ public: public: // Signals - Dali::Timer::TimerSignalV2& TickSignal(); + Dali::Timer::TimerSignalType& TickSignal(); private: // Implementation @@ -63,7 +69,6 @@ private: // Implementation private: // Data - Dali::Timer::TimerSignalV2 mTickSignal; unsigned int mInterval; }; @@ -87,17 +92,19 @@ inline const Timer& GetImplementation(const Dali::Timer& timer) TimerPtr Timer::New( unsigned int milliSec ) { - TimerPtr timerImpl = new Timer(10); + TimerPtr timerImpl = new Timer( milliSec ); return timerImpl; } Timer::Timer( unsigned int milliSec ) : mInterval( milliSec ) { + ++gTimerCount; } Timer::~Timer() { + --gTimerCount; } void Timer::Start() @@ -128,11 +135,23 @@ bool Timer::Tick() return false; } -Dali::Timer::TimerSignalV2& Timer::TickSignal() +Dali::Timer::TimerSignalType& Timer::TickSignal() +{ + return gTickSignal; +} + +// Mock setup functions: + +void Timer::MockEmitSignal() { - return mTickSignal; + if( gTimerCount > 1 ) + { + // Only emit the signal if we have more than just the timer created in the test function + gTickSignal.Emit(); + } } + } // namespace Adaptor } // namespace Internal @@ -196,7 +215,7 @@ bool Timer::IsRunning() const return true; } -Timer::TimerSignalV2& Timer::TickSignal() +Timer::TimerSignalType& Timer::TickSignal() { return Internal::Adaptor::GetImplementation( *this ).TickSignal(); } @@ -206,5 +225,27 @@ Timer::Timer(Internal::Adaptor::Timer* timer) { } +// Mock setup functions: + +void Timer::MockEmitSignal() +{ + Internal::Adaptor::GetImplementation( *this ).MockEmitSignal(); +} + } // namespace Dali + +namespace Test +{ + +int GetTimerCount() +{ + return Dali::Internal::Adaptor::gTimerCount; +} + +void EmitGlobalTimerSignal() +{ + Dali::Internal::Adaptor::gTickSignal.Emit(); +} + +}