13 #include <nlohmann/json.hpp>
24 using namespace Crest;
27 std::string
SURL =
"http://crest-01.cern.ch:8090";
30 std::cout <<
SURL << std::endl;
37 while (ret_val ==
true &&
pos != std::string::npos) {
38 pos = full_path.find(
'/',
pos + 1);
39 ret_val = std::filesystem::create_directory(full_path.substr(0,
pos));
50 std::cout << std::endl <<
"test: createTag" << std::endl;
55 {
"description",
"none"},
57 {
"insertionTime",
"2018-12-06T11:18:35.641+0000"},
58 {
"lastValidatedTime", 0},
59 {
"modificationTime",
"2018-12-06T11:18:35.641+0000"},
61 {
"payloadSpec",
"stave: Int32, eta: Int32, mag: Float, base: Float, free: Float"},
62 {
"synchronization",
"none"},
68 std::cout << std::endl <<
"test: createTag (success)" << std::endl;
71 std::cout << std::endl <<
"test: createTag (failed)" << std::endl;
72 std::cout <<
e.what() << std::endl;
77 std::cout << std::endl <<
"test: createTag2" << std::endl;
89 {
"name",
"CaloSwClusterCorrections.00-RUN2-02-11-clcon-dummy"},
91 "<timeStamp>run-lumi</timeStamp><addrHeader><address_header service_type=\"71\" clid=\"250904980\" /></addrHeader><typeName>CaloRec::ToolConstants</typeName><fullrep/>"},
92 {
"timeType",
"run-lumi"},
93 {
"payloadSpec",
"PoolRef:String4k"}
98 std::cout << std::endl <<
"test: createTag2 (success)" << std::endl;
101 std::cout << std::endl <<
"test: createTag2 (failed)" << std::endl;
102 std::cout <<
e.what() << std::endl;
109 std::cout << std::endl <<
"test: createTagF" << std::endl;
112 std::string
path =
"/tmp/cresttest/crest_dump";
114 std::filesystem::create_directories(
path);
119 {
"description",
"none"},
120 {
"endOfValidity", 0},
121 {
"insertionTime",
"2018-12-06T11:18:35.641+0000"},
122 {
"lastValidatedTime", 0},
123 {
"modificationTime",
"2018-12-06T11:18:35.641+0000"},
125 {
"payloadSpec",
"stave: Int32, eta: Int32, mag: Float, base: Float, free: Float"},
126 {
"synchronization",
"none"},
132 std::cout << std::endl <<
"test: createTagF (success)" << std::endl;
135 std::cout << std::endl <<
"test: createTagF (failed)" << std::endl;
136 std::cout <<
e.what() << std::endl;
141 std::cout << std::endl <<
"test: listTag" << std::endl;
146 std::cout << std::endl <<
"test: listTags (result) =" << std::endl
150 std::cout << std::endl <<
"test: listTags (failed)" << std::endl;
151 std::cout <<
e.what() << std::endl;
156 std::cout << std::endl <<
"test: listTagsParams" << std::endl;
166 std::cout << std::endl <<
"test: listTagsParams (result) ="
167 <<
"result = " <<
res.dump(4) << std::endl;
170 std::cout << std::endl <<
"test: listTagsParams (failed)" << std::endl;
171 std::cerr <<
e.what() << std::endl;
176 std::cout << std::endl <<
"test: listTagsParams" << std::endl;
184 nlohmann::json res1 = myCrestClient.listTagsParams(_page = 3, _size = 5);
186 std::cout <<
"test: listTagsParams (A) = "
187 << std::endl << res1.dump(4) << std::endl;
189 nlohmann::json res2 = myCrestClient.listTagsParams(_name =
name, _page = 0, _size = 5);
191 std::cout <<
"test: listTagsParams (B) = "
192 << std::endl << res2.dump(4) << std::endl;
195 std::cout << std::endl <<
"test: listTagsParams (failed)" << std::endl;
196 std::cerr <<
e.what() << std::endl;
201 std::cout << std::endl <<
"test: findTag" << std::endl;
206 std::cout << std::endl <<
"test: findTag (result) =" << std::endl
207 << tag_info.dump(4) << std::endl;
210 std::cout << std::endl <<
"test: findTag (failed)" << std::endl;
211 std::cout <<
e.what() << std::endl;
216 std::cout << std::endl <<
"test: removeTag" << std::endl;
221 std::cout << std::endl <<
"test: removeTag (success)" << std::endl;
224 std::cout << std::endl <<
"test: removeTag (failed)" << std::endl;
225 std::cout <<
e.what() << std::endl;
230 std::cout << std::endl <<
"test: updateTag" << std::endl;
234 {
"description",
"test"}};
238 std::cout << std::endl <<
"test: updateTag (success)" << std::endl;
241 std::cout << std::endl <<
"test: updateTag (failed)" << std::endl;
242 std::cout <<
e.what() << std::endl;
247 std::cout << std::endl <<
"test: updateTagSpecification" << std::endl;
250 std::string newObjectType =
"json4";
254 std::cout << std::endl <<
"test: updateTagSpecification (success)" << std::endl;
257 std::cout << std::endl <<
"test: updateTagSpecification (failed)" << std::endl;
258 std::cout <<
e.what() << std::endl;
267 std::cout << std::endl <<
"test: createGlobalTag" << std::endl;
274 {
"description",
"test"},
276 {
"insertionTime",
"2018-12-18T11:32:58.081+0000"},
277 {
"snapshotTime",
"2018-12-18T11:32:57.952+0000"},
278 {
"scenario",
"test"},
281 {
"snapshotTimeMilli",
"null"},
282 {
"insertionTimeMilli",
"null"}
287 std::cout << std::endl <<
"test: createGlobalTag (success) " << std::endl;
290 std::cout << std::endl <<
"test: createGlobalTag (failed)" << std::endl;
291 std::cout <<
e.what() << std::endl;
296 std::cout << std::endl <<
"test: findGlobalTag" << std::endl;
301 std::cout << std::endl <<
"test: findGlobalTag (result) = " << std::endl
302 << tag_info.dump(4) << std::endl;
305 std::cout << std::endl <<
"test: findGlobalTag (failed)" << std::endl;
306 std::cout <<
e.what() << std::endl;
311 std::cout << std::endl <<
"test: listGlobalTags" << std::endl;
316 std::cout << std::endl <<
"test: listGlobalTags (result) = "
317 << tag_info9.dump(4) << std::endl;
320 std::cout << std::endl <<
"test: listGlobalTags (failed)" << std::endl;
321 std::cout <<
e.what() << std::endl;
326 std::cout << std::endl <<
"test: listGlobalTagsAsString" << std::endl;
331 std::cout << std::endl <<
"test: listGlobalTagsAsString (result) = "
332 << tag_info9.dump(4) << std::endl;
335 std::cout << std::endl <<
"test: listGlobalTagsAsString (failed)" << std::endl;
336 std::cout <<
e.what() << std::endl;
341 std::cout << std::endl <<
"test: listGlobalTagsParams with additional parameters" << std::endl;
350 std::cout << std::endl <<
"test: listGlobalTagsParams (result A) =" << std::endl;
351 std::cout << list_1.dump(4) << std::endl;
354 std::cout << std::endl <<
"test: listGlobalTagsParams (result B) =" << std::endl;
355 std::cout << list_2.dump(4) << std::endl;
358 std::cout << std::endl <<
"test: listGlobalTagsParams (result C) =" << std::endl;
359 std::cout << list_3.dump(4) << std::endl;
362 std::cout << std::endl <<
"test: listGlobalTagsParams with additional parameters (failed)" << std::endl;
363 std::cerr <<
e.what() << std::endl;
368 std::cout << std::endl <<
"test: removeGlobalTag" << std::endl;
373 std::cout << std::endl <<
"test: removeGlobalTag (success)" << std::endl;
375 catch (
const std::runtime_error&
e) {
376 std::cout << std::endl <<
"test: removeGlobalTag (failed)" << std::endl;
381 std::cout << std::endl <<
"test: updateGlobalTag" << std::endl;
388 {
"description",
"test"},
390 {
"insertionTime",
"2018-12-18T11:32:58.081+0000"},
391 {
"snapshotTime",
"2018-12-18T11:32:57.952+0000"},
392 {
"scenario",
"test2"},
395 {
"snapshotTimeMilli",
"null"},
396 {
"insertionTimeMilli",
"null"}
401 std::cout << std::endl <<
"test: updateGlobalTag (success) " << std::endl;
404 std::cout << std::endl <<
"test: updateGlobalTag (failed)" << std::endl;
405 std::cout <<
e.what() << std::endl;
410 std::cout << std::endl <<
"test: findGlobalTagAsString" << std::endl;
415 std::cout << std::endl <<
"test: findGlobalTagAsString (result) = " << std::endl
416 << tag_info.dump(4) << std::endl;
419 std::cout << std::endl <<
"test: findGlobalTagAsString (failed)" << std::endl;
420 std::cout <<
e.what() << std::endl;
429 std::cout << std::endl <<
"test: createRunLumiInfo" << std::endl;
433 "{\"since\":\"10\",\"run\":\"7777771\",\"lb\":\"62\",\"starttime\":\"10\",\"endtime\":\"200\"}";
435 std::cout <<
"run-lumi = " << std::endl
436 << js.dump(4) << std::endl;
440 std::cout << std::endl <<
"test: createRunLumiInfo (success) = " << std::endl;
443 std::cout << std::endl <<
"test: createRunLumiInfo (failed)" << std::endl;
444 std::cout <<
e.what() << std::endl;
449 std::cout << std::endl <<
"test: createRunLumiInfo2" << std::endl;
464 {
"additionalProp1",
"test1"},
465 {
"additionalProp2",
"test2"},
466 {
"additionalProp3",
"test3"}
472 {
"totalElements", 0},
484 {
"datatype",
"string"},
485 {
"format",
"RunLumiSetDto"},
487 {
"filter", jsFilter},
491 std::cout <<
"run-lumi = " << std::endl
492 << jsRM.dump(4) << std::endl;
496 std::cout << std::endl <<
"test: createRunLumiInfo (success)" << std::endl;
499 std::cout << std::endl <<
"test: createRunLumiInfo (failed)" << std::endl;
500 std::cout <<
e.what() << std::endl;
505 std::cout << std::endl <<
"test: listRunLumiInfo" << std::endl;
510 std::cout << std::endl <<
"test: listRunLumiInfo (success) = " << std::endl;
511 std::cout << info16.dump(4) << std::endl;
514 std::cout << std::endl <<
"test: listRunLumiInfo (failed)" << std::endl;
515 std::cout <<
e.what() << std::endl;
524 std::cout << std::endl <<
"test: findGlobalTagMap" << std::endl;
529 std::cout << std::endl <<
"test: findGlobalTagMap (result) = "
530 << tag_info.dump(4) << std::endl;
533 std::cout << std::endl <<
"test: findGlobalTagMap (failed)" << std::endl;
534 std::cout <<
e.what() << std::endl;
540 std::cout << std::endl <<
"test: createGlobalTagMap" << std::endl;
546 {
"record",
"testing2"},
553 std::cout << std::endl <<
"test: createGlobalTagMap (success) " << std::endl;
556 std::cout << std::endl <<
"test: createGlobalTagMap (failed)" << std::endl;
557 std::cout <<
e.what() << std::endl;
566 std::cout << std::endl <<
"test: getJson" << std::endl;
570 "{\"tagName\":\"IndetBeampos-nominal\",\"since\":0,\"insertionTime\":\"2019-02-21T13:52:06.222+0000\",\"payloadHash\":\"de9afd9a5bb526d175265d1e66520ac1e7a81816cc3081925625759583e9107f\"}";
571 std::string strb =
"test";
574 std::cout << myCrestClient.
getJson(stra).dump(4) << std::endl;
577 std::cout << std::endl <<
"test: getJson for string stra (failed)" << std::endl;
578 std::cout <<
e.what() << std::endl;
582 std::cout << myCrestClient.
getJson(strb).dump(4) << std::endl;
585 std::cout << std::endl <<
"test: getJson for string strb (failed)" << std::endl;
586 std::cout <<
e.what() << std::endl;
589 std::cout <<
"getJson test ended" << std::endl;
598 std::cout << std::endl <<
"test: storePayload" << std::endl;
611 std::cout << std::endl <<
"test: storePayload (success)" << std::endl;
614 std::cout << std::endl <<
"test: storePayload (failed)" << std::endl;
615 std::cout <<
e.what() << std::endl;
622 std::cout << std::endl <<
"test: storePayloadDump" << std::endl;
624 std::string
path =
"/tmp/cresttest/crest_dump";
625 std::filesystem::create_directories(
path);
632 "{\"niovs\": 2,\"format\":\"PYLD_JSON\",\"iovsList\":[{\"since\":800,\"payload\":\"vv1\"},{\"since\":900,\"payload\":\"ww1\"}]}";
638 std::cout << std::endl <<
"test: storePayloadDump (success) " << std::endl;
641 std::cout << std::endl <<
"test: storePayloadDump (failed)" << std::endl;
642 std::cout <<
e.what() << std::endl;
651 std::cout << std::endl <<
"test: findAllIovs" << std::endl;
656 std::cout << std::endl <<
"test: findAllIovs (result) =" << std::endl;
657 std::cout << tag_info.dump(4) << std::endl;
660 std::cout << std::endl <<
"test: findAllIovs (failed)" << std::endl;
661 std::cerr <<
e.what() << std::endl;
666 std::cout << std::endl <<
"test: findAllIovs with additional parameters" << std::endl;
673 std::cout << std::endl <<
"test: findAllIovs (result A) =" << std::endl;
674 std::cout << iov_list_1.dump(4) << std::endl;
676 std::cout << std::endl <<
"test: findAllIovs (result B) =" << std::endl;
677 std::cout << iov_list_2.dump(4) << std::endl;
680 std::cout << std::endl <<
"test: findAllIovs with additional parameters (failed)" << std::endl;
681 std::cerr <<
e.what() << std::endl;
686 std::cout << std::endl <<
"test: findAllIovsFS" << std::endl;
692 std::cout << std::endl <<
"test: findAllIovsFS (result) =" << std::endl;
693 std::cout << tag_info.dump(4) << std::endl;
696 std::cout << std::endl <<
"test: findAllIovsFS (failed)" << std::endl;
697 std::cerr <<
e.what() << std::endl;
704 std::cout << std::endl <<
"test: findAllIovsFSPlus" << std::endl;
709 std::cout << std::endl <<
"test: findAllIovsFSPlus (result) =" << std::endl;
710 std::cout << tag_info.dump(4) << std::endl;
713 std::cout << std::endl <<
"test: findAllIovsFSPlus (failed)" << std::endl;
714 std::cerr <<
e.what() << std::endl;
719 std::cout << std::endl <<
"test: selectIovs with additional parameters" << std::endl;
726 std::cout << std::endl <<
"test: selectIovs (result A) =" << std::endl;
727 std::cout << iov_list_1.dump(4) << std::endl;
729 std::cout << std::endl <<
"test: selectIovs (result B) =" << std::endl;
730 std::cout << iov_list_2.dump(4) << std::endl;
732 std::cout <<
"result A size = " << iov_list_1.size() << std::endl;
733 std::cout <<
"result B size = " << iov_list_2.size() << std::endl;
736 std::cout << std::endl <<
"test: selectIovs with additional parameters (failed)" << std::endl;
737 std::cerr <<
e.what() << std::endl;
742 std::cout << std::endl <<
"test: selectIovsFS with additional parameters" << std::endl;
748 std::cout << std::endl <<
"test: selectIovs =" << std::endl;
749 std::cout << iov_list.dump(4) << std::endl;
751 std::cout <<
"result size = " << iov_list.size() << std::endl;
754 std::cout << std::endl <<
"test: selectIovsFS with additional parameters (failed)" << std::endl;
755 std::cerr <<
e.what() << std::endl;
760 std::cout << std::endl <<
"test: selectIovs" << std::endl;
765 std::cout << std::endl <<
"test: selectIovs (result) =" << std::endl;
766 std::cout << tag_info.dump(4) << std::endl;
769 std::cout << std::endl <<
"test: selectIovs (failed)" << std::endl;
770 std::cerr <<
e.what() << std::endl;
775 std::cout << std::endl <<
"test: selectIovs, all paprams" << std::endl;
780 std::cout << std::endl <<
"test: selectIovs (result) =" << std::endl;
781 std::cout << tag_info.dump(4) << std::endl;
784 std::cout << std::endl <<
"test: selectIovs (failed)" << std::endl;
785 std::cerr <<
e.what() << std::endl;
790 std::cout << std::endl <<
"test: selectGroups" << std::endl;
795 std::cout << std::endl <<
"test: selectGroups (result) =" << std::endl;
796 std::cout << tag_info.dump(4) << std::endl;
799 std::cout << std::endl <<
"test: selectGroups (failed)" << std::endl;
800 std::cerr <<
e.what() << std::endl;
812 std::cout << std::endl <<
"test: createTagMetainfo" << std::endl;
818 {
"description",
"desc-01"},
819 {
"tagInfo",
"taginf-01"},
826 std::cout << std::endl <<
"test: createTagMetaInfo (success)" << std::endl;
829 std::cout << std::endl <<
"test: createTagMetaInfo (failed)" << std::endl;
830 std::cerr <<
e.what() << std::endl;
837 std::cout << std::endl <<
"test: createTagMetainfo" << std::endl;
843 {
"description",
"desc-01"},
844 {
"tagInfo",
"taginf-01"},
847 {
"insertionTime",
"2019-03-14T13:29:25.286Z"}
851 std::cout <<
"test A:" << std::endl;
853 std::cout <<
"test: createTagMetaInfo (success)" << std::endl;
856 std::cout << std::endl <<
"test: createTagMetaInfo (failed)" << std::endl;
857 std::cerr <<
e.what() << std::endl;
860 std::cout <<
"test B:" << std::endl;
862 std::cout <<
"test: createTagMetaInfo (success)" << std::endl;
865 std::cout << std::endl <<
"test: createTagMetaInfo (failed)" << std::endl;
866 std::cerr <<
e.what() << std::endl;
872 std::cout << std::endl <<
"test: createTagMetainfo2" << std::endl;
880 "<timeStamp>run-lumi</timeStamp><addrHeader><address_header service_type=\"71\" clid=\"1238547719\" /></addrHeader><typeName>CondAttrListCollection</typeName>"},
881 {
"insertionTime",
"Fri Nov 13 16:31:10 2020"},
887 std::cout << std::endl <<
"test: createTagMetaInfo (success)" << std::endl;
890 std::cout << std::endl <<
"test: createTagMetaInfo (failed)" << std::endl;
891 std::cerr <<
e.what() << std::endl;
897 std::cout << std::endl <<
"test: createTagMetainfoDetailed" << std::endl;
902 std::cout << std::endl <<
"channel = " << std::endl
903 <<
channel.dump(4) << std::endl;
909 {
"channel_list", chanList},
910 {
"node_description",
"description of the node"},
911 {
"payload_spec",
"payload specification"}
914 std::cout << std::endl <<
"TagInfo = " << std::endl
915 << tagInfo.dump(4) << std::endl;
917 std::cout << std::endl <<
"TagInfo = " << std::endl
918 << tagInfo.dump() << std::endl;
923 {
"description",
"none"},
926 {
"tagInfo", tagInfo.dump()},
927 {
"insertionTime",
"2020-12-04"}
933 std::cout << std::endl <<
"test: createTagMetaInfoDetailed (success)" << std::endl;
936 std::cout << std::endl <<
"test: createTagMetaInfoDetailed (failed)" << std::endl;
937 std::cerr <<
e.what() << std::endl;
942 std::cout << std::endl <<
"test: getTagMetaInfo" << std::endl;
947 std::cout << std::endl <<
"test: getTagMetaInfo (result) =" << std::endl
948 << js.dump(4) << std::endl;
951 std::cout << std::endl <<
"test: getTagMetaInfo (failed)" << std::endl;
952 std::cerr <<
e.what() << std::endl;
957 std::cout << std::endl <<
"test: updateTagMetainfo" << std::endl;
963 {
"description",
"desc-02"}
968 std::cout << std::endl <<
"test: updateTagMetaInfo (success)" << std::endl;
971 std::cout << std::endl <<
"test: updateTagMetainfo (failed)" << std::endl;
972 std::cerr <<
e.what() << std::endl;
981 std::cout << std::endl <<
"test: createTagMetainfoIOVDbSvc" << std::endl;
992 {
"channel_list", chanList},
993 {
"node_description",
"description of the node"},
995 "AlgorithmID:UInt32,LBAvInstLumi:Float,LBAvEvtsPerBX:Float,LumiType:UInt32,Valid:UInt32,BunchInstLumi:Blob64k"}
1000 std::cout << std::endl <<
"test: createTagMetaInfoIOVDbSvc (success)" << std::endl;
1003 std::cout << std::endl <<
"test: createTagMetaInfoIOVDbSvc (failed)" << std::endl;
1004 std::cerr <<
e.what() << std::endl;
1009 std::cout << std::endl <<
"test: getTagMetaInfoIOVDbSvc" << std::endl;
1014 std::cout << std::endl <<
"test: getTagMetaInfoIOVDbSvc (result) = " << std::endl
1015 << js68.dump(4) << std::endl;
1018 std::cout << std::endl <<
"test: getTagMetaInfoIOVDbSvc (failed)" << std::endl;
1019 std::cerr <<
e.what() << std::endl;
1024 std::cout << std::endl <<
"test: convertTagMetaInfo2CREST" << std::endl;
1027 std::string
tagname =
"test_MvG4";
1036 {
"channel_list", chanList},
1037 {
"node_description",
"description of the node"},
1039 "AlgorithmID:UInt32,LBAvInstLumi:Float,LBAvEvtsPerBX:Float,LumiType:UInt32,Valid:UInt32,BunchInstLumi:Blob64k"}
1042 std::cout << std::endl <<
"tagInfo = " << std::endl
1043 << tagInfo.dump(4) << std::endl;
1047 std::cout << std::endl
1048 <<
"Tag Meta Info in CREST format = " <<
res.dump(4) << std::endl;
1051 std::cout << std::endl <<
"test: convertTagMetaInfo2CREST (failed)" << std::endl;
1052 std::cerr <<
e.what() << std::endl;
1061 std::cout << std::endl <<
"test: listPayloadTagInfo" << std::endl;
1066 std::cout << std::endl <<
"test: listPayloadTagInfo (result) =" << std::endl
1070 std::cout << std::endl <<
"test: listPayloadTagInfo (failed)" << std::endl;
1071 std::cerr <<
e.what() << std::endl;
1076 std::cout << std::endl <<
"test: listPayloadTagInfo with tag " <<
tagname << std::endl;
1081 std::cout << std::endl <<
"test: listPayloadTagInfo (result) =" << std::endl
1085 std::cout << std::endl <<
"test: listPayloadTagInfo (failed)" << std::endl;
1086 std::cerr <<
e.what() << std::endl;
1096 std::cout << std::endl <<
"test: getBlobInStream" << std::endl;
1103 out8.open(
"data.txt");
1104 if (out8.is_open()) {
1106 std::cout << std::endl <<
"test: getBlobInStream test finished." << std::endl;
1107 std::cout << std::endl <<
"The blob for hash \"" <<
hash
1108 <<
"\" was written in the file \"data.txt\"." << std::endl;
1112 std::cout << std::endl <<
"test: getBlobInStream (failed)" << std::endl;
1113 std::cerr <<
e.what() << std::endl;
1118 std::cout << std::endl <<
"test: getBlob" << std::endl;
1123 std::cout << std::endl <<
"test: getBlob (result) =" << std::endl;
1124 std::cout << tag_info7 << std::endl;
1125 std::cout << std::endl <<
"test: getBlob" << std::endl;
1128 std::cout << std::endl <<
"test: getBlob (failed)" << std::endl;
1129 std::cerr <<
e.what() << std::endl;
1134 std::cout << std::endl <<
"test: getPayloadAsJson" << std::endl;
1139 std::cout << std::endl <<
"test: getPayloadAsJson (result) =" << std::endl;
1140 std::cout << info26.dump(4) << std::endl;
1141 std::cout << std::endl <<
"test: getPayloadAsJson" << std::endl;
1144 std::cout << std::endl <<
"test: getPayloadAsJson (failed)" << std::endl;
1145 std::cerr <<
e.what() << std::endl;
1150 std::cout << std::endl <<
"test: getPayloadAsString" << std::endl;
1155 std::cout << std::endl <<
"test: getPayloadAsString (result) =" << std::endl;
1156 std::cout << info27 << std::endl;
1157 std::cout << std::endl <<
"test: getPayloadAsString" << std::endl;
1160 std::cout << std::endl <<
"test: getPayloadAsString (failed)" << std::endl;
1161 std::cerr <<
e.what() << std::endl;
1166 std::cout << std::endl <<
"test: getPayloadMetaInfoAsString" << std::endl;
1171 std::cout << std::endl <<
"test: getPayloadMetaInfoAsString (result) =" << std::endl;
1172 std::cout << info15 << std::endl;
1173 std::cout << std::endl <<
"test: getPayloadMetaInfoAsString" << std::endl;
1176 std::cout << std::endl <<
"test: getPayloadMetaInfoAsString (failed)" << std::endl;
1177 std::cerr <<
e.what() << std::endl;
1182 std::cout << std::endl <<
"test: getPayloadMetaInfo" << std::endl;
1187 std::cout << std::endl <<
"test: getPayloadMetaInfo (result) =" << std::endl;
1188 std::cout << info14.dump(4) << std::endl;
1189 std::cout << std::endl <<
"test: getPayloadMetaInfo" << std::endl;
1192 std::cout << std::endl <<
"test: getPayloadMetaInfo (failed)" << std::endl;
1193 std::cerr <<
e.what() << std::endl;
1205 std::cout << std::endl <<
"test: createTagMetainfoDetailedFs" << std::endl;
1211 std::cout << std::endl <<
"channel = " << std::endl
1212 <<
channel.dump(4) << std::endl;
1218 {
"channel_list", chanList},
1219 {
"node_description",
"description of the node"},
1220 {
"payload_spec",
"payload specification"}
1223 std::cout << std::endl <<
"TagInfo = " << std::endl
1224 << tagInfo.dump(4) << std::endl;
1226 std::cout << std::endl <<
"TagInfo = " << std::endl
1227 << tagInfo.dump() << std::endl;
1232 {
"description",
"none"},
1235 {
"tagInfo", tagInfo.dump()},
1236 {
"insertionTime",
"2020-12-04"}
1242 std::cout << std::endl <<
"test: createTagMetaInfoDetailedFs (success)" << std::endl;
1245 std::cout << std::endl <<
"test: createTagMetaInfoDetailedFs (failed)" << std::endl;
1246 std::cerr <<
e.what() << std::endl;
1251 std::cout << std::endl <<
"test: getTagMetaInfoFs" << std::endl;
1257 std::cout << std::endl <<
"test: getTagMetaInfoFs (result) =" << std::endl
1258 << js.dump(4) << std::endl;
1261 std::cout << std::endl <<
"test: getTagMetaInfoFs (failed)" << std::endl;
1262 std::cerr <<
e.what() << std::endl;
1267 std::cout << std::endl <<
"test: updateTagMetainfoFs" << std::endl;
1272 std::cout << std::endl <<
"channel = " << std::endl
1273 <<
channel.dump(4) << std::endl;
1279 {
"channel_list", chanList},
1280 {
"node_description",
"description of the node"},
1281 {
"payload_spec",
"payload specification"}
1284 std::cout << std::endl <<
"TagInfo = " << std::endl
1285 << tagInfo.dump(4) << std::endl;
1287 std::cout << std::endl <<
"TagInfo = " << std::endl
1288 << tagInfo.dump() << std::endl;
1293 {
"description",
"none"},
1296 {
"tagInfo", tagInfo.dump()},
1297 {
"insertionTime",
"2020-12-04"}
1304 std::cout << std::endl <<
"test: updateTagMetaInfoFs (success)" << std::endl;
1307 std::cout << std::endl <<
"test: updateTagMetaInfoFs (failed)" << std::endl;
1308 std::cerr <<
e.what() << std::endl;
1315 std::cout << std::endl <<
"test: findTagFs" << std::endl;
1318 std::cout << std::endl <<
"test: findTagFs" << std::endl;
1322 std::cout << std::endl <<
"test: findTagFs (result) =" << std::endl
1323 << tag_info.dump(4) << std::endl;
1326 std::cout << std::endl <<
"test: findTagFs (failed)" << std::endl;
1327 std::cout <<
e.what() << std::endl;
1332 std::cout << std::endl <<
"test: createTagFs" << std::endl;
1334 bool rewrite =
true;
1339 {
"description",
"none"},
1340 {
"endOfValidity", 0},
1341 {
"insertionTime",
"2018-12-06T11:18:35.641+0000"},
1342 {
"lastValidatedTime", 0},
1343 {
"modificationTime",
"2018-12-06T11:18:35.641+0000"},
1345 {
"payloadSpec",
"stave: Int32, eta: Int32, mag: Float, base: Float, free: Float"},
1346 {
"synchronization",
"none"},
1347 {
"timeType",
"time"}
1352 std::cout << std::endl <<
"test: createTagFs (success)" << std::endl;
1355 std::cout << std::endl <<
"test: createTagFs (failed)" << std::endl;
1356 std::cout <<
e.what() << std::endl;
1363 std::cout << std::endl <<
"test: storeBatchPayloads" << std::endl;
1365 bool rewrite =
true;
1369 std::string
str =
"[{\"data\":\"aaa\",\"since\":100},{\"data\":\"bbb\",\"since\":150}]";
1374 std::cout << std::endl <<
"test: storeBatchPayloads (success) " << std::endl;
1377 std::cout << std::endl <<
"test: storeBatchPayloads (failed)" << std::endl;
1378 std::cerr <<
e.what() << std::endl;
1385 std::cout << std::endl <<
"test: createGlobalTagFs" << std::endl;
1387 bool rewrite =
true;
1394 {
"description",
"test"},
1396 {
"insertionTime",
"2018-12-18T11:32:58.081+0000"},
1397 {
"snapshotTime",
"2018-12-18T11:32:57.952+0000"},
1398 {
"scenario",
"test"},
1401 {
"snapshotTimeMilli",
"null"},
1402 {
"insertionTimeMilli",
"null"}
1407 std::cout << std::endl <<
"test: createGlobalTagFs (success) " << std::endl;
1410 std::cout << std::endl <<
"test: createGlobalTagFs (failed)" << std::endl;
1411 std::cout <<
e.what() << std::endl;
1416 std::cout << std::endl <<
"test: findGlobalTagFs" << std::endl;
1417 bool rewrite =
true;
1422 std::cout << std::endl <<
"test: findGlobalTagFs (result) = " << std::endl
1423 << tag_info.dump(4) << std::endl;
1426 std::cout << std::endl <<
"test: findGlobalTagFs (failed)" << std::endl;
1427 std::cout <<
e.what() << std::endl;
1434 std::cout << std::endl <<
"test: createGlobalTagMapFs" << std::endl;
1435 bool rewrite =
true;
1441 {
"record",
"testing2"},
1448 std::cout << std::endl <<
"test: createGlobalTagMapFs (success) " << std::endl;
1451 std::cout << std::endl <<
"test: createGlobalTagMapFs (failed)" << std::endl;
1452 std::cout <<
e.what() << std::endl;
1457 std::cout << std::endl <<
"test: findGlobalTagMapFs" << std::endl;
1458 bool rewrite =
true;
1463 std::cout << std::endl <<
"test: findGlobalTagMapFs (result) = " << std::endl
1464 << tag_info.dump(4) << std::endl;
1467 std::cout << std::endl <<
"test: findGlobalTagMapFs (failed)" << std::endl;
1468 std::cout <<
e.what() << std::endl;
1475 std::cout << std::endl <<
"test: getHash" << std::endl;
1478 std::cout << myCrestClient.
getHash(
str) << std::endl;
1482 std::cout <<
"Hash(" <<
str <<
") = ";
1484 std::cout << hash_hex_str << std::endl;
1490 std::cout << std::endl <<
"test: createGlobalTag (2 parameters)" << std::endl;
1495 std::cout << std::endl <<
"test: createGlobalTag (success) (2 parameters)" << std::endl;
1498 std::cout << std::endl <<
"test: createGlobalTag (failed) (2 parameters)" << std::endl;
1499 std::cout <<
e.what() << std::endl;
1505 const std::string& record,
const std::string&
label) {
1506 std::cout << std::endl <<
"test: createGlobalTagMap (all parameters)" << std::endl;
1519 std::cout << std::endl <<
"test: createGlobalTagMap (all parameters) (success) " << std::endl;
1522 std::cout << std::endl <<
"test: createGlobalTagMap (all parameters) (failed)" << std::endl;
1523 std::cout <<
e.what() << std::endl;
1530 std::cout << std::endl <<
"test: getDateAndTime" << std::endl;
1535 std::cout << std::endl <<
"now = " <<
time << std::endl;
1538 std::cout << std::endl <<
"test: getDateAndTime (failed)" << std::endl;
1539 std::cerr <<
e.what() << std::endl;
1546 std::cout << std::endl <<
"test: getPayloadAsStringFS" << std::endl;
1551 std::cout << std::endl <<
"test: getPayloadAsStringFS (result) =" << std::endl
1552 <<
info << std::endl;
1555 std::cout << std::endl <<
"test: getPayloadAsStringFS (failed)" << std::endl;
1556 std::cout <<
e.what() << std::endl;
1561 std::cout << std::endl <<
"test: getPayloadAsJsonFS" << std::endl;
1566 std::cout << std::endl <<
"test: getPayloadAsJsonFS (result) =" << std::endl
1567 <<
info.dump(4) << std::endl;
1570 std::cout << std::endl <<
"test: getPayloadAsJsonFS (failed)" << std::endl;
1571 std::cout <<
e.what() << std::endl;
1576 std::cout << std::endl <<
"test: getPayloadMetaInfoAsStringFS" << std::endl;
1581 std::cout << std::endl <<
"test: getPayloadMetaInfoAsStringFS (result) =" << std::endl
1582 <<
info << std::endl;
1585 std::cout << std::endl <<
"test: getPayloadMetaInfoAsStringFS (failed)" << std::endl;
1586 std::cout <<
e.what() << std::endl;
1591 std::cout << std::endl <<
"test: getPayloadMetaInfoAsJsonFS" << std::endl;
1596 std::cout << std::endl <<
"test: getPayloadMetaInfoAsJsonFS (result) =" << std::endl
1597 <<
info.dump(4) << std::endl;
1600 std::cout << std::endl <<
"test: getPayloadMetaInfoAsJsonFS (failed)" << std::endl;
1601 std::cout <<
e.what() << std::endl;
1606 std::cout << std::endl <<
"test: getBlobInStreamFs" << std::endl;
1613 out8.open(
"data.txt");
1614 if (out8.is_open()) {
1616 std::cout << std::endl <<
"test: getBlobInStreamFs (result) =" << std::endl;
1617 std::cout << tag_info8 << std::endl;
1618 std::cout <<
"blob is in the file data.txt" << std::endl;
1619 std::cout << std::endl <<
"test: getBlobInStreamFs" << std::endl;
1623 std::cout << std::endl <<
"test: getBlobInStreamFs (failed)" << std::endl;
1624 std::cerr <<
e.what() << std::endl;
1629 std::cout << std::endl <<
"test: getBlobFs" << std::endl;
1634 std::cout << std::endl <<
"test: getBlobFs (result) =" << std::endl
1635 <<
info << std::endl;
1638 std::cout << std::endl <<
"test: getBlobFs (failed)" << std::endl;
1639 std::cout <<
e.what() << std::endl;
1644 std::cout << std::endl <<
"test: returnJArray" << std::endl;
1653 std::cout << std::endl <<
"test: returnJArray (result) =" << std::endl
1654 <<
res.dump(4) << std::endl;
1657 std::cout << std::endl <<
"test: returnJArray (failed)" << std::endl;
1658 std::cout <<
e.what() << std::endl;
1671 std::cout << std::endl <<
"test: storeBatchPayloads" << std::endl;
1675 std::string
str =
"[{\"data\":\"aaa\",\"since\":100},{\"data\":\"bbb\",\"since\":150}]";
1680 std::cout << std::endl <<
"test: storeBatchPayloads (success) " << std::endl;
1683 std::cout << std::endl <<
"test: storeBatchPayloads (failed)" << std::endl;
1684 std::cerr <<
e.what() << std::endl;
1691 std::cout << std::endl <<
"test: storeBatchPayloads2" << std::endl;
1698 std::string
str =
"[{\"data\":" +
d1 +
",\"since\":100},{\"data\":" +
d2 +
",\"since\":150}]";
1703 std::cout << std::endl <<
"test: storeBatchPayloads2 (success) " << std::endl;
1706 std::cout << std::endl <<
"test: storeBatchPayloads2 (failed)" << std::endl;
1707 std::cerr <<
e.what() << std::endl;
1714 std::cout << std::endl <<
"test: createTagFs" << std::endl;
1716 bool rewrite =
true;
1721 {
"description",
"none"},
1722 {
"endOfValidity", 0},
1723 {
"insertionTime",
"2018-12-06T11:18:35.641+0000"},
1724 {
"lastValidatedTime", 0},
1725 {
"modificationTime",
"2018-12-06T11:18:35.641+0000"},
1727 {
"payloadSpec",
"stave: Int32, eta: Int32, mag: Float, base: Float, free: Float"},
1728 {
"synchronization",
"none"},
1729 {
"timeType",
"time"}
1734 std::cout << std::endl <<
"test: storeBatchPayloads for N items (a tag created)" << std::endl;
1737 std::cout << std::endl <<
"test: storeBatchPayloads for N items (tag creation failed)" << std::endl;
1738 std::cout <<
e.what() << std::endl;
1746 for (
int i = 1;
i <=
n;
i++) {
1756 data.push_back(itemD);
1761 std::cout << std::endl <<
"test: storeBatchPayloads for N items (success) " << std::endl;
1764 std::cout << std::endl <<
"test: storeBatchPayloads for N items (failed)" << std::endl;
1765 std::cerr <<
e.what() << std::endl;
1772 std::cout << std::endl <<
"test: createTagFs" << std::endl;
1774 bool rewrite =
true;
1779 {
"description",
"none"},
1780 {
"endOfValidity", 0},
1781 {
"insertionTime",
"2018-12-06T11:18:35.641+0000"},
1782 {
"lastValidatedTime", 0},
1783 {
"modificationTime",
"2018-12-06T11:18:35.641+0000"},
1785 {
"payloadSpec",
"stave: Int32, eta: Int32, mag: Float, base: Float, free: Float"},
1786 {
"synchronization",
"none"},
1787 {
"timeType",
"time"}
1792 std::cout << std::endl <<
"test: createTagFs (success)" << std::endl;
1795 std::cout << std::endl <<
"test: createTagFs (failed)" << std::endl;
1796 std::cout <<
e.what() << std::endl;
1800 std::string
str =
"[{\"data\":\"aaa\",\"since\":100},{\"data\":\"bbb\",\"since\":150}]";
1805 std::cout << std::endl <<
"test: storeBatchPayloads (success) " << std::endl;
1808 std::cout << std::endl <<
"test: storeBatchPayloads (failed)" << std::endl;
1809 std::cerr <<
e.what() << std::endl;
1814 std::cout << std::endl <<
"test: createTagFs" << std::endl;
1816 bool rewrite =
true;
1821 {
"description",
"none"},
1822 {
"endOfValidity", 0},
1823 {
"insertionTime",
"2018-12-06T11:18:35.641+0000"},
1824 {
"lastValidatedTime", 0},
1825 {
"modificationTime",
"2018-12-06T11:18:35.641+0000"},
1827 {
"payloadSpec",
"stave: Int32, eta: Int32, mag: Float, base: Float, free: Float"},
1828 {
"synchronization",
"none"},
1829 {
"timeType",
"time"}
1834 std::cout << std::endl <<
"test: createTagFs (success)" << std::endl;
1837 std::cout << std::endl <<
"test: createTagFs (failed)" << std::endl;
1838 std::cout <<
e.what() << std::endl;
1845 std::string
str =
"[{\"payloadHash\":" +
d1 +
",\"since\":100},{\"payloadHash\":" +
d2 +
",\"since\":150}]";
1850 std::cout << std::endl <<
"test: storeBatchPayloads A (success) " << std::endl;
1853 std::cout << std::endl <<
"test: storeBatchPayloads A (failed)" << std::endl;
1854 std::cerr <<
e.what() << std::endl;
1860 str =
"[{\"data\":" +
d1 +
",\"since\":200},{\"data\":" +
d2 +
",\"since\":250}]";
1865 std::cout << std::endl <<
"test: storeBatchPayloads B (success) " << std::endl;
1868 std::cout << std::endl <<
"test: storeBatchPayloads B (failed)" << std::endl;
1869 std::cerr <<
e.what() << std::endl;
1876 std::cout << std::endl <<
"test: getSize" << std::endl;
1881 std::cout << std::endl <<
"test: getSize (result) = "
1882 <<
info << std::endl;
1885 std::cout << std::endl <<
"test: getSize (failed)" << std::endl;
1886 std::cout <<
e.what() << std::endl;
1891 std::cout << std::endl <<
"test: getSizeFS" << std::endl;
1893 bool rewrite =
true;
1898 std::cout << std::endl <<
"test: getSizeFS (result) = "
1899 <<
info << std::endl;
1902 std::cout << std::endl <<
"test: getSizeFS (failed)" << std::endl;
1903 std::cout <<
e.what() << std::endl;
1910 map<std::string, std::string>
m;
1914 cout <<
"Map Listing 1: " << endl;
1915 for (
int i = 0;
it !=
m.end(); ++
it, ++
i) {
1916 cout <<
i <<
") key: " <<
it->first <<
", value: " <<
it->second << endl;
1919 bool rewrite =
true;
1922 std::cout <<
"IOV List = " << std::endl <<
iovs.dump(4) << std::endl;
1925 std::cout <<
"IOV number = " <<
length << std::endl;
1927 std::cout <<
"item (" <<
i <<
") = " << std::endl <<
iovs[
i].dump(4) << std::endl;
1929 auto r =
iovs[
i].find(
"payloadHash");
1931 std::string
hash =
iovs[
i].value(
"payloadHash",
"NONE");
1932 std::cout <<
"hash = " <<
hash << std::endl;
1933 std::cout <<
"iov = " <<
iovs[
i].dump() << std::endl;
1939 cout <<
"Map Listing 2: " << endl;
1940 for (
int i = 0;
it !=
m.end(); ++
it, ++
i) {
1941 cout <<
i <<
") key: " <<
it->first <<
", value: " <<
it->second << endl;
1948 bool rewrite =
true;
1955 std::cout << std::endl <<
"test: testGetTagDataInfo (failed)" << std::endl;
1956 std::cout <<
e.what() << std::endl;
1961 std::cout << std::endl <<
"test: getFirstLetters" << std::endl;
1964 std::cout <<
"string to test = " <<
str << std::endl;
1968 std::cout << std::endl <<
"test: getFirstLetters (result) = " << str2 << std::endl;
1971 std::cout << std::endl <<
"test: getFirstLetters (failed)" << std::endl;
1972 std::cerr <<
e.what() << std::endl;
1978 std::cout << std::endl <<
"test: createIOV" << std::endl;
1984 {
"description",
"none"},
1985 {
"endOfValidity", 0},
1986 {
"insertionTime",
"2018-12-06T11:18:35.641+0000"},
1987 {
"lastValidatedTime", 0},
1988 {
"modificationTime",
"2018-12-06T11:18:35.641+0000"},
1990 {
"payloadSpec",
"stave: Int32, eta: Int32, mag: Float, base: Float, free: Float"},
1991 {
"synchronization",
"none"},
1992 {
"timeType",
"time"}
1995 std::cout <<
"tag 1 = " << std::endl << js.dump(4) << std::endl;
1999 std::cout << std::endl <<
"Tag " << tagname1 <<
" created" << std::endl;
2002 std::cout << std::endl <<
"ERROR: tag " << tagname1 <<
" creation failed" << std::endl;
2003 std::cout <<
e.what() << std::endl;
2007 js[
"name"] = tagname2;
2009 std::cout <<
"tag 2 = " << std::endl << js.dump(4) << std::endl;
2013 std::cout << std::endl <<
"Tag " << tagname2 <<
" created" << std::endl;
2016 std::cout << std::endl <<
"ERROR: tag " << tagname2 <<
" creation failed" << std::endl;
2017 std::cout <<
e.what() << std::endl;
2027 std::string
str =
"[{\"data\":" +
d1 +
",\"since\":100},{\"data\":" +
d2 +
",\"since\":150}]";
2032 std::cout << std::endl <<
"2 IOVs created in tag " << tagname1 << std::endl;
2035 std::cout << std::endl <<
"ERROR: payloads and IOVs were not created." << std::endl;
2036 std::cerr <<
e.what() << std::endl;
2044 std::cout << std::endl <<
"IOV list for tag " << tagname1 <<
" =" << std::endl;
2045 std::cout <<
iovList.dump(4) << std::endl;
2047 int listSize =
iovList.size();
2049 for (
int j = 0; j < listSize; j++) {
2054 newIov[
"tagName"] = tagname2;
2060 std::cout <<
"ERROR: Cannot write the IOV for the tag \"" << tagname2 <<
"\"" << std::endl;
2061 std::cerr <<
e.what() << std::endl;
2068 std::cout << std::endl <<
"ERROR: cannot get IOV list for tag " << tagname1 << std::endl;
2069 std::cerr <<
e.what() << std::endl;
2075 std::cout << std::endl <<
"IOV list for tag " << tagname2 <<
" =" << std::endl;
2076 std::cout <<
iovList.dump(4) << std::endl;
2079 std::cout << std::endl <<
"ERROR: cannot get IOV list for tag " << tagname2 << std::endl;
2080 std::cerr <<
e.what() << std::endl;
2087 std::cout << std::endl <<
"test: storeBatchIOVs" << std::endl;
2092 {
"description",
"none"},
2093 {
"endOfValidity", 0},
2094 {
"insertionTime",
"2018-12-06T11:18:35.641+0000"},
2095 {
"lastValidatedTime", 0},
2096 {
"modificationTime",
"2018-12-06T11:18:35.641+0000"},
2098 {
"payloadSpec",
"stave: Int32, eta: Int32, mag: Float, base: Float, free: Float"},
2099 {
"synchronization",
"none"},
2100 {
"timeType",
"time"}
2103 std::cout <<
"tag 1 = " << std::endl << js.dump(4) << std::endl;
2107 std::cout << std::endl <<
"Tag " << tagname1 <<
" created" << std::endl;
2110 std::cout << std::endl <<
"ERROR: tag " << tagname1 <<
" creation failed" << std::endl;
2111 std::cout <<
e.what() << std::endl;
2115 js[
"name"] = tagname2;
2117 std::cout <<
"tag 2 = " << std::endl << js.dump(4) << std::endl;
2121 std::cout << std::endl <<
"Tag " << tagname2 <<
" created" << std::endl;
2124 std::cout << std::endl <<
"ERROR: tag " << tagname2 <<
" creation failed" << std::endl;
2125 std::cout <<
e.what() << std::endl;
2135 std::string
str =
"[{\"data\":" +
d1 +
",\"since\":100},{\"data\":" +
d2 +
",\"since\":150}]";
2140 std::cout << std::endl <<
"2 IOVs created in tag " << tagname1 << std::endl;
2143 std::cout << std::endl <<
"ERROR: payloads and IOVs were not created." << std::endl;
2144 std::cerr <<
e.what() << std::endl;
2152 std::cout << std::endl <<
"IOV list for tag " << tagname1 <<
" =" << std::endl;
2153 std::cout <<
iovList.dump(4) << std::endl;
2155 int listSize =
iovList.size();
2158 for (
int j = 0; j < listSize; j++) {
2163 newIov[
"tagName"] = tagname2;
2164 newIovList.push_back(newIov);
2173 std::cout <<
"ERROR: Cannot write the IOVs for the tag \"" << tagname2 <<
"\"" << std::endl;
2174 std::cerr <<
e.what() << std::endl;
2180 std::cout << std::endl <<
"ERROR: cannot get IOV list for tag " << tagname1 << std::endl;
2181 std::cerr <<
e.what() << std::endl;
2187 std::cout << std::endl <<
"IOV list for tag " << tagname2 <<
" =" << std::endl;
2188 std::cout <<
iovList.dump(4) << std::endl;
2191 std::cout << std::endl <<
"ERROR: cannot get IOV list for tag " << tagname2 << std::endl;
2192 std::cerr <<
e.what() << std::endl;
2200 std::cout << std::endl <<
"test: getMgmtInfo" << std::endl;
2205 std::cout << std::endl <<
"test: getMgmtInfo (result) =" << std::endl
2206 << tag_info.dump(4) << std::endl;
2209 std::cout << std::endl <<
"test: getMgmtInfo (failed)" << std::endl;
2210 std::cout <<
e.what() << std::endl;
2215 std::cout << std::endl <<
"test: getCrestVersion" << std::endl;
2220 std::cout << std::endl <<
"test: CREST server version = "
2224 std::cout << std::endl <<
"test: getCrestVersion (failed)" << std::endl;
2225 std::cout <<
e.what() << std::endl;
2230 std::cout << std::endl <<
"test: getClientVersion" << std::endl;
2235 std::cout << std::endl <<
"test: CrestApi version = "
2239 std::cout << std::endl <<
"test: getClientVersion (failed)" << std::endl;
2240 std::cout <<
e.what() << std::endl;
2245 std::cout << std::endl <<
"test: getMajorVersion" << std::endl;
2248 std::string A =
"4.1";
2249 std::string B =
"abracadabra";
2250 std::string C =
".2";
2251 std::string D =
"aaa.2";
2255 std::cout << std::endl <<
"test: major version (" << A <<
") = "
2256 << versionA << std::endl;
2259 std::cout << std::endl <<
"test: getMajorVersion (failed)" << std::endl;
2260 std::cout <<
e.what() << std::endl;
2265 std::cout << std::endl <<
"test: major version (" << B <<
") = "
2266 << versionB << std::endl;
2269 std::cout << std::endl <<
"test: getMajorVersion (failed)" << std::endl;
2270 std::cout <<
e.what() << std::endl;
2275 std::cout << std::endl <<
"test: major version (" << C <<
") = "
2276 << versionC << std::endl;
2279 std::cout << std::endl <<
"test: getMajorVersion (failed)" << std::endl;
2280 std::cout <<
e.what() << std::endl;
2285 std::cout << std::endl <<
"test: major version (" << D <<
") = "
2286 << versionD << std::endl;
2289 std::cout << std::endl <<
"test: getMajorVersion (failed)" << std::endl;
2290 std::cout <<
e.what() << std::endl;
2296 std::cout << std::endl <<
"test: checkCrestVersion" << std::endl;
2301 std::cout <<
"test is OK." << std::endl;
2304 std::cout << std::endl <<
"test: checkCrestVersion (failed)" << std::endl;
2305 std::cout <<
e.what() << std::endl;
2312 std::cout << std::endl <<
"test: getCrestVersion2" << std::endl;
2317 std::cout << std::endl <<
"test: CREST server version = "
2321 std::cout << std::endl <<
"test: getCrestVersion2 (failed)" << std::endl;
2322 std::cout <<
e.what() << std::endl;
2327 std::cout << std::endl <<
"test: checkCrestVersion2" << std::endl;
2332 std::cout <<
"test is OK." << std::endl;
2335 std::cout << std::endl <<
"test: checkCrestVersion2 (failed)" << std::endl;
2336 std::cout <<
e.what() << std::endl;
2341 std::cout << std::endl <<
"test: testConstructor" << std::endl;
2348 std::cout << std::endl <<
"test: removeTagFromGlobalTagMap" << std::endl;
2353 std::cout << std::endl <<
"test: GlobalTagMap (initial) = "
2354 << tagMap.dump(4) << std::endl;
2356 int n = tagMap.size();
2357 std::cout <<
n <<
" tags will be deleted:\n";
2360 for (
int i = 0;
i <
n;
i++){
2363 std::string
tag =
"";
2364 std::string
label =
"";
2366 auto subjectIdIter1 = j.find(
"tagName");
2367 if (subjectIdIter1 != j.end()){
2368 std::string
tag = j[
"tagName"];
2369 std::cout <<
"tag name = " <<
tag << std::endl;
2372 auto subjectIdIter2 = j.find(
"label");
2373 if (subjectIdIter2 != j.end()){
2375 std::cout <<
"label = " <<
label << std::endl;
2380 std::cout <<
tag <<
" removed.\n";
2383 std::cout << std::endl <<
"Cannot remove tag " <<
tag << std::endl;
2384 std::cout <<
e.what() << std::endl;
2390 std::cout << std::endl <<
"test: findGlobalTagMap (failed)" << std::endl;
2391 std::cout <<
e.what() << std::endl;
2397 std::cout << std::endl <<
"test: GlobalTagMap (result) = "
2398 << tagMap.dump(4) << std::endl;
2401 std::cout << std::endl <<
"test: tRemoveTagFromGlobalTagMap (failed)" << std::endl;
2402 std::cout <<
e.what() << std::endl;
2408 std::cout << std::endl <<
"test: storeBatchPayloadsFiles" << std::endl;
2415 std::string file1 =
"/tmp/mvg01.txt";
2416 std::string file2 =
"/tmp/mvg02.txt";
2420 if (out1.is_open()){
2427 if (out2.is_open()){
2432 d1 =
"file://" + file1;
2433 d2 =
"file://" + file2;
2435 std::string
str =
"[{\"data\":\"" +
d1 +
"\",\"since\":100},{\"data\":\"" +
d2 +
"\",\"since\":150}]";
2438 std::cout <<
"json = " << js.dump(4) << std::endl;
2442 std::cout << std::endl <<
"test: storeBatchPayloadsFiles (success) " << std::endl;
2445 std::cout << std::endl <<
"test: storeBatchPayloadsFiles (failed)" << std::endl;
2446 std::cerr <<
e.what() << std::endl;
2452 std::cout << std::endl <<
"test: storeData" << std::endl;
2459 std::string
file =
"/tmp/mvg01.txt";
2463 if (out1.is_open()){
2470 std::cout << std::endl <<
"test: storeData (success) " << std::endl;
2473 std::cout << std::endl <<
"test: storeData (failed)" << std::endl;
2474 std::cerr <<
e.what() << std::endl;
2479 std::cout << std::endl <<
"test: storeDataArray" << std::endl;
2488 std::string file1 =
"/tmp/mvg01.txt";
2489 std::string file2 =
"/tmp/mvg02.txt";
2491 std::map<uint64_t, std::string>
data;
2495 if (out1.is_open()){
2502 if (out2.is_open()){
2507 data[since1] = file1;
2508 data[since2] = file2;
2512 std::cout << std::endl <<
"test: storeDataArray (success) " << std::endl;
2515 std::cout << std::endl <<
"test: storeDataArray (failed)" << std::endl;
2516 std::cerr <<
e.what() << std::endl;
2522 std::cout << std::endl <<
"test: createGlobalTagMap" << std::endl;
2528 {
"record",
"testing3"},
2535 std::cout << std::endl <<
"test: createGlobalTagMap (success) " << std::endl;
2538 std::cout << std::endl <<
"test: createGlobalTagMap (failed)" << std::endl;
2539 std::cout <<
e.what() << std::endl;
2544 std::cout << std::endl <<
"test: selectGroups2" << std::endl;
2549 std::cout << std::endl <<
"test: selectGroups2 (result) =" << std::endl;
2550 std::cout << tag_info.dump(4) << std::endl;
2553 std::cout << std::endl <<
"test: selectGroups2 (failed)" << std::endl;
2554 std::cerr <<
e.what() << std::endl;
2568 std::string
tagname =
"test_tag_01";
2619 std::cout <<
"CREST Server path not found" << std::endl;
2620 std::cout <<
"Please, run this program with a server path:" << std::endl;
2621 std::cout <<
"crest_example http://crest-undertow-api.web.cern.ch" << std::endl;
2623 std::cout <<
"Test ended" << std::endl;