#include "stdafx.h" #include "CppUnitTest.h" #include "SiaDriveConfig.h" using namespace Microsoft::VisualStudio::CppUnitTestFramework; namespace UnitTests { TEST_CLASS(SiaDriveConfig) { private: const wchar_t* TEST_CONFIG_FILE = L".\\test_config.json"; public: TEST_METHOD(DefaultFileCreation) { DeleteFile(TEST_CONFIG_FILE); Assert::IsFalse(PathFileExists(TEST_CONFIG_FILE)); Sia::Api::CSiaDriveConfig cfg(TEST_CONFIG_FILE); Assert::AreEqual(static_cast(0), cfg.GetUI_Main_TabIndex()); Assert::IsTrue(PathFileExists(TEST_CONFIG_FILE)); Assert::AreEqual(TEST_CONFIG_FILE, cfg.GetFilePath().c_str()); CFile f; Assert::IsTrue(f.Open(cfg.GetFilePath().c_str(), CFile::modeRead)); std::string s; s.resize(f.GetLength()); f.Read(&s[0], s.length()); f.Close(); json j = json::parse(s.begin(), s.end()); Assert::AreEqual(static_cast(0), j["UI_Main_TabIndex"].get ()); std::string tempFolder; tempFolder.resize(MAX_PATH + 1); ::GetTempPathA(MAX_PATH, &tempFolder[0]); Assert::AreEqual(tempFolder, j["TempFolder"].get ()); Assert::AreEqual(std::string("./Config/renter_upload.db3"), j["Renter_UploadDbFilePath"].get ()); DeleteFile(cfg.GetFilePath().c_str()); } }; }