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/SiaCurlTests.cpp
2017-02-03 22:28:01 -06:00

77 lines
1.8 KiB
C++

#include "stdafx.h"
#include "CppUnitTest.h"
#include "SiaCurl.h"
#include "UnitTestConfig.h"
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
namespace UnitTests
{
TEST_CLASS(SiaCurl)
{
DAEMON_TEST()
public:
TEST_METHOD(InvalidHostConfiguration)
{
CSiaCurl s;
s.SetHostConfig({ L"localhoss", 9980, TEST_SERVER_VERSION });
json result;
SiaCurlError err = s.Get(L"/daemon/version", result);
Assert::IsTrue(err == SiaCurlError::NoResponse);
}
TEST_METHOD(GetBasicTest)
{
CSiaCurl s;
s.SetHostConfig({ TEST_SERVER_AND_PORT, TEST_SERVER_VERSION });
json result;
SiaCurlError err = s.Get(L"/daemon/version", result);
Assert::IsTrue(err == SiaCurlError::Success);
}
TEST_METHOD(EmptyHostConfigRequiredVersion)
{
CSiaCurl s;
s.SetHostConfig({ TEST_SERVER_AND_PORT, L"" });
json result;
SiaCurlError err = s.Get(L"/daemon/version", result);
Assert::IsTrue(err == SiaCurlError::InvalidRequiredVersion);
}
TEST_METHOD(ServerVersionDoesNotMatchRequiredVersion)
{
CSiaCurl s;
s.SetHostConfig({ TEST_SERVER_AND_PORT, L"ouaoeuaoeuaoeu" });
json result;
SiaCurlError err = s.Get(L"/daemon/version", result);
Assert::IsTrue(err == SiaCurlError::ServerVersionMismatch);
}
TEST_METHOD(MissingBeginningForwardSlash)
{
CSiaCurl s;
s.SetHostConfig({ TEST_SERVER_AND_PORT, TEST_SERVER_VERSION });
json result;
SiaCurlError err = s.Get(L"daemon/version", result);
Assert::IsTrue(err == SiaCurlError::InvalidRequestPath);
}
TEST_METHOD(InvalidCharactersInPath)
{
CSiaCurl s;
s.SetHostConfig({ TEST_SERVER_AND_PORT, TEST_SERVER_VERSION });
json result;
SiaCurlError err = s.Get(L"~~~^**()Z&%$#daemon/version", result);
Assert::IsTrue(err == SiaCurlError::InvalidRequestPath);
}
};
Daemon SiaCurl::_daemon;
}