41 #ifndef __OPENFLUID_WARESDEVTESTS_SIMULATORSIGNATUREUTILS_HPP__
42 #define __OPENFLUID_WARESDEVTESTS_SIMULATORSIGNATUREUTILS_HPP__
53 Sign.
ID =
"unit.test.simulator-signature";
54 Sign.
Name =
"Simulator signature for unit testing";
55 Sign.
Description =
"This is a simulator signature\n"
56 " that should be used for **unit testing only**";
61 {
"Kurt Cobain",
"kurt@nirvana.org"},
62 {
"Dave Grohl",
"dave@nirvana.org"},
63 {
"Krist Novoselic",
"krist@nirvana.org"}
65 Sign.
Contacts = {{
"OpenFLUID contact",
"contact@openfluid-project.org"}};
66 Sign.
License =
"GPL-3.0-or-later";
68 Sign.
Tags = {
"simulator",
"unit testing",
"development",
"software quality"} ;
70 {
"OpenFLUID",
"www.openfluid-project.org"},
71 {
"OpenFLUID community",
"community.openfluid-project.org"}
74 Sign.
Issues.
add({101,
"Issue X",
"This is the issue X",{
"bug",
"results"},
"Dave",
77 Sign.
Issues.
add({102,
"Issue Y",
"This is\nthe issue Y",{
"feature",
"IO"},
"Kurt",
113 {
"XU",
"XU units are created"},
114 {
"YU",
"YU units connections to XU units are updated"},
127 const std::string& Context)
129 std::cout << Context <<
" : compareSignatures()" << std::endl;
131 compareSignaturesBase<openfluid::ware::SimulatorSignature>(Sign1,Sign2);
149 BOOST_CHECK_EQUAL_COLLECTIONS(
204 BOOST_CHECK_EQUAL(DataItem1.value(
"name",
""), DataItem2.value(
"name",
""));
205 BOOST_CHECK_EQUAL(DataItem1.value(
"description",
""), DataItem2.value(
"description",
""));
206 BOOST_CHECK_EQUAL(DataItem1.value(
"siunit",
""), DataItem2.value(
"siunit",
""));
207 BOOST_CHECK_EQUAL(DataItem1.value(
"type",
""), DataItem2.value(
"type",
""));
208 BOOST_CHECK_EQUAL(DataItem1.value(
"unitsclass",
""), DataItem2.value(
"unitsclass",
""));
218 const std::string& ConditionKey)
223 for (
unsigned int i=0; i < ConditionObject1.size(); i++)
236 const std::string& Context)
238 std::cout << Context <<
" : compareJSON()" << std::endl;
244 BOOST_CHECK(Simulator1.is_object());
245 BOOST_CHECK(Simulator2.is_object());
275 for (
unsigned int i=0; i < Events1.size(); i++)
277 BOOST_CHECK_EQUAL(Events1[i], Events2[i]);
286 for (
unsigned int i=0; i < RequiredEF1.size(); i++)
288 BOOST_CHECK_EQUAL(RequiredEF1[i], RequiredEF2[i]);
293 for (
unsigned int i=0; i < UsedEF1.size(); i++)
295 BOOST_CHECK_EQUAL(UsedEF1[i], UsedEF2[i]);
301 BOOST_CHECK_EQUAL(SpatialGraph1.value(
"description",
""), SpatialGraph2.value(
"description",
""));
305 for (
unsigned int i=0; i < DetailsSG1.size(); i++)
307 BOOST_CHECK_EQUAL(DetailsSG1[i].value(
"unitsclass",
""), DetailsSG2[i].value(
"unitsclass",
""));
308 BOOST_CHECK_EQUAL(DetailsSG1[i].value(
"description",
""), DetailsSG2[i].value(
"description",
""));
314 BOOST_CHECK_EQUAL(Scheduling1.value(
"type",
""), Scheduling2.value(
"type",
""));
315 BOOST_CHECK_EQUAL(Scheduling1.value(
"min", 0), Scheduling2.value(
"min", 0));
316 BOOST_CHECK_EQUAL(Scheduling1.value(
"max", 0), Scheduling2.value(
"max", 0));
void compareJSONBase(const openfluid::thirdparty::json &Json1, const openfluid::thirdparty::json &Json2)
Definition: SignatureCommon.hpp:148
void checkArraysJSON(const openfluid::thirdparty::json &Json1, const openfluid::thirdparty::json &Json2)
Definition: SignatureCommon.hpp:84
openfluid::ware::SimulatorSignature getRefSignature()
Definition: SimulatorSignatureUtils.hpp:49
void compareDataItemsJSON(const openfluid::thirdparty::json &DataItem1, const openfluid::thirdparty::json &DataItem2)
Definition: SimulatorSignatureUtils.hpp:201
void compareIOConditionJSON(const openfluid::thirdparty::json &Object1, const openfluid::thirdparty::json &Object2, const std::string &ConditionKey)
Definition: SimulatorSignatureUtils.hpp:216
void compareSignatures(const openfluid::ware::SimulatorSignature &Sign1, const openfluid::ware::SimulatorSignature &Sign2, const std::string &Context)
Definition: SimulatorSignatureUtils.hpp:125
void compareJSON(const openfluid::thirdparty::json &Json1, const openfluid::thirdparty::json &Json2, const std::string &Context)
Definition: SimulatorSignatureUtils.hpp:234
Class for management of date and time information.
Definition: DateTime.hpp:88
@ VECTOR
Definition: Value.hpp:66
@ MATRIX
Definition: Value.hpp:66
@ DOUBLE
Definition: Value.hpp:66
@ INTEGER
Definition: Value.hpp:66
SignatureHandledData HandledData
Definition: WareSignature.hpp:336
std::vector< SignatureDataItem > UsedParams
Definition: WareSignature.hpp:290
std::vector< SignatureSpatialDataItem > UsedVars
Definition: WareSignature.hpp:296
std::vector< std::string > RequiredExtraFiles
Definition: WareSignature.hpp:302
std::vector< std::string > UsedExtraFiles
Definition: WareSignature.hpp:304
std::vector< SignatureSpatialDataItem > RequiredAttributes
Definition: WareSignature.hpp:298
std::vector< SignatureSpatialDataItem > RequiredVars
Definition: WareSignature.hpp:294
std::vector< SignatureSpatialDataItem > UsedAttributes
Definition: WareSignature.hpp:300
std::vector< SignatureDataItem > RequiredParams
Definition: WareSignature.hpp:292
openfluid::core::Duration_t Min
Definition: SimulatorSignature.hpp:153
void setAsRange(openfluid::core::Duration_t MinVal, openfluid::core::Duration_t MaxVal)
Definition: SimulatorSignature.hpp:184
openfluid::core::Duration_t Max
Definition: SimulatorSignature.hpp:155
SchedulingType Type
Definition: SimulatorSignature.hpp:151
std::string UpdatedUnitsGraph
Definition: SimulatorSignature.hpp:122
std::vector< SignatureUnitsClassItem > UpdatedUnitsClasses
Definition: SimulatorSignature.hpp:124
std::vector< SignatureSpatialDataItem > ProducedVars
Definition: SimulatorSignature.hpp:63
std::vector< SignatureSpatialDataItem > UpdatedVars
Definition: SimulatorSignature.hpp:65
std::vector< SignatureSpatialDataItem > ProducedAttributes
Definition: SimulatorSignature.hpp:67
std::vector< openfluid::core::UnitsClass_t > UsedEventsOnUnits
Definition: SimulatorSignature.hpp:69
Definition: SimulatorSignature.hpp:237
SignatureTimeScheduling TimeScheduling
Definition: SimulatorSignature.hpp:256
SimulatorSignatureHandledData SimulatorHandledData
Definition: SimulatorSignature.hpp:241
SignatureUnitsGraph HandledUnitsGraph
Definition: SimulatorSignature.hpp:251
void add(const WareIssue &Issue)
WareID_t ID
Definition: WareSignature.hpp:77
WareStatus_t Status
Definition: WareSignature.hpp:91
PeopleList_t Authors
Definition: WareSignature.hpp:96
std::vector< std::string > Tags
Definition: WareSignature.hpp:111
std::string Description
Definition: WareSignature.hpp:81
LinksList_t Links
Definition: WareSignature.hpp:116
std::string License
Definition: WareSignature.hpp:106
WareName_t Name
Definition: WareSignature.hpp:79
DependenciesMap_t Dependencies
Definition: WareSignature.hpp:126
WareVersion_t Version
Definition: WareSignature.hpp:86
PeopleList_t Contacts
Definition: WareSignature.hpp:101
WareIssues Issues
Definition: WareSignature.hpp:121
nlohmann::ordered_json json
Definition: JSON.hpp:52
@ BETA
Definition: TypeDefs.hpp:111