1
0
This commit is contained in:
Scott E. Graves
2017-02-24 00:56:18 -06:00
parent b087392cf2
commit 5ea1909493
5 changed files with 40 additions and 21 deletions

View File

@@ -23,6 +23,11 @@ namespace UnitTests
});
}
~CEventAccumulator()
{
Clear();
}
private:
std::deque<std::shared_ptr<CEvent>> _events;
std::mutex _eventMutex;
@@ -35,6 +40,12 @@ namespace UnitTests
}
public:
void Clear()
{
std::lock_guard<std::mutex> l(_eventMutex);
_events.clear();
}
template<typename T>
bool WaitForEvent(DWORD timeoutMs = 5000)
{
@@ -70,9 +81,10 @@ namespace UnitTests
TEST_CLASS(UnitTests)
{
private:
const SiaHostConfig hostConfig = { TEST_SERVER_AND_PORT, TEST_SERVER_VERSION };
const SiaHostConfig hostConfig = { L"127.0.0.1", 9988, TEST_SERVER_VERSION };
static std::unique_ptr<CMockSiad> siad;
static CDebugConsumer _debugConsumer;
static CEventAccumulator _eventAccumulator;
public:
TEST_METHOD_INITIALIZE(Initialize)
@@ -101,9 +113,8 @@ namespace UnitTests
siad->Start(SiadTestType::UploadFile);
try
{
CEventAccumulator eventAccumulator;
CEventSystem::EventSystem.Start();
_eventAccumulator.Clear();
CSiaDriveConfig driveConfig;
CSiaCurl siaCurl(hostConfig);
@@ -113,15 +124,15 @@ namespace UnitTests
CUploadManager uploadManager(siaCurl, &driveConfig);
uploadManager.AddOrUpdate(L"/test1/test.rtf", L"./TestCacheFolder/test1/test.rtf");
Assert::IsTrue(eventAccumulator.WaitForEvent<NewUploadAdded>(5000));
Assert::IsTrue(eventAccumulator.WaitForEvent<CreatingTemporarySiaDriveFile>(5000));
Assert::IsTrue(eventAccumulator.WaitForEvent<RenamingTemporarySiaDriveFile>(5000));
Assert::IsTrue(_eventAccumulator.WaitForEvent<NewUploadAdded>(5000));
Assert::IsTrue(_eventAccumulator.WaitForEvent<CreatingTemporarySiaDriveFile>(5000));
Assert::IsTrue(_eventAccumulator.WaitForEvent<RenamingTemporarySiaDriveFile>(5000));
Assert::IsFalse(eventAccumulator.Contains<DeleteSiaDriveFileFailed>());
Assert::IsFalse(eventAccumulator.Contains<RenamingTemporarySiaDriveFileFailed>());
Assert::IsFalse(eventAccumulator.Contains<DeleteTemporarySiaDriveFileFailed>());
Assert::IsFalse(eventAccumulator.Contains<CreatingTemporarySiaDriveFileFailed>());
Assert::IsFalse(eventAccumulator.Contains<CreatingTemporarySiaDriveFileFailed>());
Assert::IsFalse(_eventAccumulator.Contains<DeleteSiaDriveFileFailed>());
Assert::IsFalse(_eventAccumulator.Contains<RenamingTemporarySiaDriveFileFailed>());
Assert::IsFalse(_eventAccumulator.Contains<DeleteTemporarySiaDriveFileFailed>());
Assert::IsFalse(_eventAccumulator.Contains<CreatingTemporarySiaDriveFileFailed>());
Assert::IsFalse(_eventAccumulator.Contains<CreatingTemporarySiaDriveFileFailed>());
}
catch (SQLite::Exception e)
{
@@ -136,4 +147,5 @@ namespace UnitTests
std::unique_ptr<CMockSiad> UnitTests::siad;
CDebugConsumer UnitTests::_debugConsumer;
CEventAccumulator UnitTests::_eventAccumulator;
}