From 42019e2f25235f69ac5f8efdabedd99fca32f1a1 Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Wed, 5 Nov 2014 20:51:21 +0000 Subject: idle: unit test. Change-Id: Ie48fb4260bf580010715777bc63974e4d635aed8 --- vcl/qa/cppunit/timer.cxx | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/vcl/qa/cppunit/timer.cxx b/vcl/qa/cppunit/timer.cxx index a0860009ca6d..4e2bb5647f7d 100644 --- a/vcl/qa/cppunit/timer.cxx +++ b/vcl/qa/cppunit/timer.cxx @@ -79,13 +79,31 @@ void TimerTest::testWatchdog() } #endif +// -------------------------------------------------------------------- -void TimerTest::testIdle() +class IdleBool : public Idle { -// Add an idle handler -// forcible execute that lot first ... and ... + bool &mrBool; +public: + IdleBool( bool &rBool ) : + Idle( VCL_IDLE_PRIORITY_LOWEST ), mrBool( rBool ) + { + Start(); + mrBool = false; + } + virtual void Timeout() SAL_OVERRIDE + { + mrBool = true; + Application::EndYield(); + } +}; -// Error ... +void TimerTest::testIdle() +{ + bool bTriggered = false; + IdleBool aTest( bTriggered ); + Timer::ProcessAllIdleHandlers(); + CPPUNIT_ASSERT_MESSAGE("watchdog triggered", bTriggered); } // -------------------------------------------------------------------- -- cgit