1
0

More unit tests

This commit is contained in:
Scott E. Graves
2017-02-03 15:35:15 -06:00
parent 3be04b0e0e
commit 316d20c495
5 changed files with 33 additions and 12 deletions

View File

@@ -55,12 +55,21 @@ SiaCurlError CSiaCurl::_Get(const String& path, json& response) const
})); }));
curl_easy_setopt(_curlHandle, CURLOPT_WRITEDATA, &result); curl_easy_setopt(_curlHandle, CURLOPT_WRITEDATA, &result);
const CURLcode res = curl_easy_perform(_curlHandle); const CURLcode res = curl_easy_perform(_curlHandle);
if (res != CURLE_OK) if (res == CURLE_OK)
{ {
ret = SiaCurlError::UnknownFailure; ret = CheckApiError((response = json::parse(result.c_str())));
}
else
{
if ((res == CURLE_COULDNT_RESOLVE_HOST) || (res == CURLE_COULDNT_CONNECT))
{
ret = SiaCurlError::NoResponse;
}
else
{
ret = SiaCurlError::UnknownFailure;
}
} }
ret = CheckApiError((response = json::parse(result.c_str())));
} }
return ret; return ret;

View File

@@ -10,12 +10,12 @@ namespace UnitTests
TEST_CLASS(SiaApi) TEST_CLASS(SiaApi)
{ {
private: private:
const SiaHostConfig TEST_HOST_CONFIG = { L"localhost", 9980, TEST_SERVER_VERSION }; const SiaHostConfig _hostConfig = { TEST_SERVER_AND_PORT, TEST_SERVER_VERSION };
public: public:
TEST_METHOD(GetServerVersion) TEST_METHOD(GetServerVersion)
{ {
CSiaApi api(TEST_HOST_CONFIG); CSiaApi api(_hostConfig);
Assert::IsTrue(api.GetServerVersion() == TEST_SERVER_VERSION); Assert::IsTrue(api.GetServerVersion() == TEST_SERVER_VERSION);
} }
}; };

View File

@@ -10,10 +10,20 @@ namespace UnitTests
TEST_CLASS(SiaCurl) TEST_CLASS(SiaCurl)
{ {
public: 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) TEST_METHOD(GetBasicTest)
{ {
CSiaCurl s; CSiaCurl s;
s.SetHostConfig({ L"localhost", 9980, TEST_SERVER_VERSION }); s.SetHostConfig({ TEST_SERVER_AND_PORT, TEST_SERVER_VERSION });
json result; json result;
SiaCurlError err = s.Get(L"/daemon/version", result); SiaCurlError err = s.Get(L"/daemon/version", result);
@@ -23,7 +33,7 @@ namespace UnitTests
TEST_METHOD(EmptyHostConfigRequiredVersion) TEST_METHOD(EmptyHostConfigRequiredVersion)
{ {
CSiaCurl s; CSiaCurl s;
s.SetHostConfig({ L"localhost", 9980, L"" }); s.SetHostConfig({ TEST_SERVER_AND_PORT, L"" });
json result; json result;
SiaCurlError err = s.Get(L"/daemon/version", result); SiaCurlError err = s.Get(L"/daemon/version", result);
@@ -33,7 +43,7 @@ namespace UnitTests
TEST_METHOD(ServerVersionDoesNotMatchRequiredVersion) TEST_METHOD(ServerVersionDoesNotMatchRequiredVersion)
{ {
CSiaCurl s; CSiaCurl s;
s.SetHostConfig({ L"localhost", 9980, L"ouaoeuaoeuaoeu" }); s.SetHostConfig({ TEST_SERVER_AND_PORT, L"ouaoeuaoeuaoeu" });
json result; json result;
SiaCurlError err = s.Get(L"/daemon/version", result); SiaCurlError err = s.Get(L"/daemon/version", result);
@@ -43,7 +53,7 @@ namespace UnitTests
TEST_METHOD(MissingBeginningForwardSlash) TEST_METHOD(MissingBeginningForwardSlash)
{ {
CSiaCurl s; CSiaCurl s;
s.SetHostConfig({ L"localhost", 9980, TEST_SERVER_VERSION }); s.SetHostConfig({ TEST_SERVER_AND_PORT, TEST_SERVER_VERSION });
json result; json result;
SiaCurlError err = s.Get(L"daemon/version", result); SiaCurlError err = s.Get(L"daemon/version", result);
@@ -53,7 +63,7 @@ namespace UnitTests
TEST_METHOD(InvalidCharactersInPath) TEST_METHOD(InvalidCharactersInPath)
{ {
CSiaCurl s; CSiaCurl s;
s.SetHostConfig({ L"localhost", 9980, TEST_SERVER_VERSION }); s.SetHostConfig({ TEST_SERVER_AND_PORT, TEST_SERVER_VERSION });
json result; json result;
SiaCurlError err = s.Get(L"~~~^**()Z&%$#daemon/version", result); SiaCurlError err = s.Get(L"~~~^**()Z&%$#daemon/version", result);

View File

@@ -10,7 +10,7 @@ namespace UnitTests
TEST_CLASS(SiaWalletApi) TEST_CLASS(SiaWalletApi)
{ {
private: private:
CSiaApi _api = CSiaApi({ L"localhost", 9980, TEST_SERVER_VERSION }); CSiaApi _api = CSiaApi({ TEST_SERVER_AND_PORT, TEST_SERVER_VERSION });
public: public:
TEST_METHOD(GetWallet) TEST_METHOD(GetWallet)

View File

@@ -1,4 +1,6 @@
#pragma once #pragma once
#define TEST_SERVER_AND_PORT L"localhost", 9980
#define TEST_SERVER_VERSION L"1.1.0" #define TEST_SERVER_VERSION L"1.1.0"
using namespace Sia::Api; using namespace Sia::Api;