Mercurial > hg > orthanc
diff UnitTestsSources/MultiThreadingTests.cpp @ 2598:34dc57f4a7d2 jobs
simplification of JobStepResult
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 16 May 2018 16:23:20 +0200 |
parents | a3fdfb6979ed |
children | 593d6b0f4cba |
line wrap: on
line diff
--- a/UnitTestsSources/MultiThreadingTests.cpp Wed May 16 14:40:05 2018 +0200 +++ b/UnitTestsSources/MultiThreadingTests.cpp Wed May 16 16:23:20 2018 +0200 @@ -34,7 +34,6 @@ #include "PrecompiledHeadersUnitTests.h" #include "gtest/gtest.h" -#include "../Core/JobsEngine/JobStepRetry.h" #include "../Core/JobsEngine/JobsEngine.h" #include "../Core/MultiThreading/Locker.h" #include "../Core/OrthancException.h" @@ -244,20 +243,20 @@ class DummyJob : public Orthanc::IJob { private: - JobStepResult result_; + bool fails_; unsigned int count_; unsigned int steps_; public: DummyJob() : - result_(Orthanc::JobStepCode_Success), + fails_(false), count_(0), steps_(4) { } - explicit DummyJob(JobStepResult result) : - result_(result), + explicit DummyJob(bool fails) : + fails_(fails), count_(0), steps_(4) { @@ -271,18 +270,22 @@ { } - virtual JobStepResult* ExecuteStep() + virtual JobStepResult ExecuteStep() { boost::this_thread::sleep(boost::posix_time::milliseconds(10)); - if (count_ == steps_ - 1) + if (fails_) { - return new JobStepResult(result_); + return JobStepResult::Failure(ErrorCode_ParameterOutOfRange); + } + else if (count_ == steps_ - 1) + { + return JobStepResult::Success(); } else { count_++; - return new JobStepResult(JobStepCode_Continue); + return JobStepResult::Continue(); } } @@ -767,7 +770,8 @@ if (1) { - printf(">> %d\n", engine.GetRegistry().SubmitAndWait(new DummyJob(JobStepResult(Orthanc::JobStepCode_Failure)), rand() % 10)); + ASSERT_TRUE(engine.GetRegistry().SubmitAndWait(new DummyJob(), rand() % 10)); + ASSERT_FALSE(engine.GetRegistry().SubmitAndWait(new DummyJob(true), rand() % 10)); } boost::this_thread::sleep(boost::posix_time::milliseconds(100));