42 lines
1.8 KiB
C++
42 lines
1.8 KiB
C++
#include "ActiveLibDoctest/TestingPlatforms.h"
|
|
|
|
#include "Active/Serialise/JSON/JSONTransport.h"
|
|
#include "Active/Serialise/Package/Wrapper/PackageWrap.h"
|
|
#include "Active/Utility/BufferIn.h"
|
|
#include "Active/Utility/BufferOut.h"
|
|
#include "Speckle/Record/Credentials/Account.h"
|
|
|
|
using namespace active::serialise;
|
|
using namespace active::serialise::json;
|
|
using namespace active::serialise::json;
|
|
using namespace speckle::record::cred;
|
|
using namespace speckle::utility;
|
|
|
|
namespace {
|
|
|
|
const char* accountJSON = "{\"id\":\"d4468f8d6f1e4c48a899518795326ea8\",\"token\":\"42986a57b3304baa8773f937aa0b7bcd42986a57b3\",\"refreshToken\":\"00b01c421de4404889f30947de1506d3440c476432\",\"isDefault\":true,\"isOnline\":false,\"serverInfo\":{\"name\":\"My new Speckle Server\",\"company\":\"Unknown Company\",\"version\":\"2.20.2-branch.testing.138676-e8c8291\",\"adminContact\":\"n/a\",\"description\":\"This a community deployment of a Speckle Server.\",\"frontend2\":true,\"url\":\"https://testing.speckle.dev\",\"migration\":null},\"userInfo\":{\"id\":\"00b01c421d\",\"name\":\"someone@speckle.systems\",\"email\":\"someone@speckle.systems\",\"company\":null,\"avatar\":null,\"streams\":{\"totalCount\":2},\"commits\":{\"totalCount\":5}}}";
|
|
}
|
|
|
|
|
|
TEST_SUITE(TESTQ(AccountTests)) TEST_SUITE_OPEN
|
|
|
|
//Test to receive account serialised as JSON from SQLite dbase
|
|
TEST_CASE(TESTQ(testAccountReceive)) {
|
|
Account account;
|
|
JSONTransport transport;
|
|
try {
|
|
transport.receive(PackageWrap{account}, Identity{}, String{accountJSON});
|
|
} catch(...) {
|
|
FAIL_CHECK(TEST_MESSAGE(Account deserialisation failed));
|
|
}
|
|
String accountOut;
|
|
try {
|
|
transport.send(PackageWrap{account}, Identity{}, accountOut);
|
|
} catch(...) {
|
|
FAIL_CHECK(TEST_MESSAGE(Account serialisation failed));
|
|
}
|
|
|
|
}
|
|
|
|
TEST_SUITE_CLOSE
|