1
0
This repository has been archived on 2025-07-27. You can view files and clone it, but cannot push or open issues or pull requests.
Files
siadrive/UnitTests/UploadManagerTest.cpp
2017-02-23 00:55:18 -06:00

65 lines
1.4 KiB
C++

#include "stdafx.h"
#include "CppUnitTest.h"
#include "SiaApi.h"
#include "UploadManager.h"
#include "MockSiad.h"
#include "SiaDriveConfig.h"
#include "UnitTestConfig.h"
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
using namespace Sia::Api;
namespace UnitTests
{
TEST_CLASS(UnitTests)
{
private:
const SiaHostConfig hostConfig = { TEST_SERVER_AND_PORT, TEST_SERVER_VERSION };
static std::unique_ptr<CMockSiad> siad;
public:
TEST_METHOD_INITIALIZE(Initialize)
{
// Always delete DB before next test
CSiaDriveConfig config;
::DeleteFileA(config.GetRenter_UploadDbFilePath().c_str());
siad.reset(new CMockSiad(hostConfig));
}
TEST_METHOD_CLEANUP(DestroyTest)
{
siad->Stop();
}
TEST_CLASS_CLEANUP(DestroyClass)
{
siad->Stop();
}
TEST_METHOD(AddOrUpdateNoExisting)
{
siad->Start(SiadTestType::UploadFile);
try
{
CSiaDriveConfig driveConfig;
CSiaCurl siaCurl(hostConfig);
String version = siaCurl.GetServerVersion();
Assert::AreEqual(version.c_str(), TEST_SERVER_VERSION); // Connectivity test
CUploadManager uploadManager(siaCurl, &driveConfig);
uploadManager.AddOrUpdate(L"/test1/test.rtf", L"./TestCacheFolder/test1/test.rtf");
Sleep(-1);
}
catch (SQLite::Exception e)
{
siad->Stop();
throw;
}
siad->Stop();
}
};
std::unique_ptr<CMockSiad> UnitTests::siad;
}