diff options
author | Benoit Foucher <benoit@zeroc.com> | 2007-08-29 11:13:09 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2007-08-29 11:13:09 +0200 |
commit | bbe8c336b83903fa6f7066850d22503b14d108d5 (patch) | |
tree | cb59c8738aa3318df5325da044b03d6a285682b2 /cpp/test/IceUtil/timer/Client.cpp | |
parent | Prevent registering the same task if already scheduled, fixed bug. (diff) | |
download | ice-bbe8c336b83903fa6f7066850d22503b14d108d5.tar.bz2 ice-bbe8c336b83903fa6f7066850d22503b14d108d5.tar.xz ice-bbe8c336b83903fa6f7066850d22503b14d108d5.zip |
More IceUtil::Timer fixes
Diffstat (limited to 'cpp/test/IceUtil/timer/Client.cpp')
-rw-r--r-- | cpp/test/IceUtil/timer/Client.cpp | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/cpp/test/IceUtil/timer/Client.cpp b/cpp/test/IceUtil/timer/Client.cpp index cde264b2305..c82ade188ee 100644 --- a/cpp/test/IceUtil/timer/Client.cpp +++ b/cpp/test/IceUtil/timer/Client.cpp @@ -100,16 +100,20 @@ int main(int argc, char* argv[]) { TestTaskPtr task = new TestTask(); timer->schedule(task, IceUtil::Time::now()); - try - { - timer->schedule(task, IceUtil::Time::now()); - test(false); - } - catch(const IceUtil::IllegalArgumentException&) - { - } task->waitForRun(); - timer->schedule(task, IceUtil::Time::now()); + while(true) + { + timer->schedule(task, IceUtil::Time::now()); + try + { + timer->schedule(task, IceUtil::Time::now()); + test(task->hasRun()); + } + catch(const IceUtil::IllegalArgumentException&) + { + break; + } + } task->waitForRun(); } @@ -161,7 +165,7 @@ int main(int argc, char* argv[]) timer->scheduleRepeated(task, IceUtil::Time::milliSeconds(20)); IceUtil::ThreadControl::sleep(IceUtil::Time::milliSeconds(500)); test(task->hasRun()); - test(task->getCount() > 15); + test(task->getCount() > 1); test(task->getCount() < 26); test(timer->cancel(task)); int count = task->getCount(); |