11#include < fstream>
22#include < memory>
3+ #include < optional>
34
45#include " CXXGraph/CXXGraph.hpp"
56#include " CXXGraph/Utility/SecureRandom.hpp"
@@ -249,8 +250,7 @@ TEST(RWOutputTest, test_8) {
249250
250251 for (const auto &readEdgeIt : readEdge) {
251252 if (readEdgeIt->getUserId () == " 1" ) {
252- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
253- readEdgeIt->isDirected ().value ());
253+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
254254 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
255255 node1.getUserId ());
256256 // ASSERT_EQ(readEdgeIt->getNodePair().first->getData(), node1.getData());
@@ -259,8 +259,7 @@ TEST(RWOutputTest, test_8) {
259259 // ASSERT_EQ(readEdgeIt->getNodePair().second->getData(),
260260 // node2.getData());
261261 } else if (readEdgeIt->getUserId () == " 2" ) {
262- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
263- readEdgeIt->isDirected ().value ());
262+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
264263 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
265264 node2.getUserId ());
266265 // ASSERT_EQ(readEdgeIt->getNodePair().first->getData(), node2.getData());
@@ -269,8 +268,7 @@ TEST(RWOutputTest, test_8) {
269268 // ASSERT_EQ(readEdgeIt->getNodePair().second->getData(),
270269 // node3.getData());
271270 } else if (readEdgeIt->getUserId () == " 3" ) {
272- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
273- !readEdgeIt->isDirected ().value ());
271+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
274272 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
275273 node1.getUserId ());
276274 // ASSERT_EQ(readEdgeIt->getNodePair().first->getData(), node1.getData());
@@ -318,26 +316,23 @@ TEST(RWOutputTest, test_9) {
318316
319317 for (const auto &readEdgeIt : readEdge) {
320318 if (readEdgeIt->getId () == edge1.getId ()) {
321- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
322- readEdgeIt->isDirected ().value ());
319+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
323320 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
324321 node1.getUserId ());
325322 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node1.getData ());
326323 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
327324 node2.getUserId ());
328325 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node2.getData ());
329326 } else if (readEdgeIt->getId () == edge2.getId ()) {
330- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
331- readEdgeIt->isDirected ().value ());
327+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
332328 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
333329 node2.getUserId ());
334330 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node2.getData ());
335331 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
336332 node3.getUserId ());
337333 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node3.getData ());
338334 } else if (readEdgeIt->getId () == edge3.getId ()) {
339- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
340- !readEdgeIt->isDirected ().value ());
335+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
341336 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
342337 node1.getUserId ());
343338 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node1.getData ());
@@ -386,10 +381,8 @@ TEST(RWOutputTest, test_10) {
386381
387382 for (const auto &readEdgeIt : readEdge) {
388383 if (readEdgeIt->getId () == edge1.getId ()) {
389- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
390- readEdgeIt->isDirected ().value ());
391- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
392- readEdgeIt->isWeighted ().value ());
384+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
385+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
393386 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
394387 ->getWeight (),
395388 5 );
@@ -400,21 +393,17 @@ TEST(RWOutputTest, test_10) {
400393 node2.getUserId ());
401394 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node2.getData ());
402395 } else if (readEdgeIt->getId () == edge2.getId ()) {
403- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
404- readEdgeIt->isDirected ().value ());
405- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
406- !readEdgeIt->isWeighted ().value ());
396+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
397+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{false });
407398 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
408399 node2.getUserId ());
409400 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node2.getData ());
410401 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
411402 node3.getUserId ());
412403 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node3.getData ());
413404 } else if (readEdgeIt->getId () == edge3.getId ()) {
414- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
415- !readEdgeIt->isDirected ().value ());
416- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
417- readEdgeIt->isWeighted ().value ());
405+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
406+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
418407 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
419408 ->getWeight (),
420409 6 );
@@ -632,8 +621,7 @@ TEST(RWOutputTest, test_18) {
632621
633622 for (const auto &readEdgeIt : readEdge) {
634623 if (readEdgeIt->getId () == edge1.getId ()) {
635- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
636- readEdgeIt->isDirected ().value ());
624+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
637625 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
638626 node1.getUserId ());
639627 // ASSERT_EQ(readEdgeIt->getNodePair().first->getData(), node1.getData());
@@ -642,8 +630,7 @@ TEST(RWOutputTest, test_18) {
642630 // ASSERT_EQ(readEdgeIt->getNodePair().second->getData(),
643631 // node2.getData());
644632 } else if (readEdgeIt->getId () == edge2.getId ()) {
645- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
646- readEdgeIt->isDirected ().value ());
633+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
647634 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
648635 node2.getUserId ());
649636 // ASSERT_EQ(readEdgeIt->getNodePair().first->getData(), node2.getData());
@@ -652,8 +639,7 @@ TEST(RWOutputTest, test_18) {
652639 // ASSERT_EQ(readEdgeIt->getNodePair().second->getData(),
653640 // node3.getData());
654641 } else if (readEdgeIt->getId () == edge3.getId ()) {
655- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
656- !readEdgeIt->isDirected ().value ());
642+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
657643 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
658644 node1.getUserId ());
659645 // ASSERT_EQ(readEdgeIt->getNodePair().first->getData(), node1.getData());
@@ -701,26 +687,23 @@ TEST(RWOutputTest, test_19) {
701687
702688 for (const auto &readEdgeIt : readEdge) {
703689 if (readEdgeIt->getId () == edge1.getId ()) {
704- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
705- readEdgeIt->isDirected ().value ());
690+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
706691 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
707692 node1.getUserId ());
708693 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node1.getData ());
709694 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
710695 node2.getUserId ());
711696 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node2.getData ());
712697 } else if (readEdgeIt->getId () == edge2.getId ()) {
713- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
714- readEdgeIt->isDirected ().value ());
698+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
715699 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
716700 node2.getUserId ());
717701 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node2.getData ());
718702 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
719703 node3.getUserId ());
720704 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node3.getData ());
721705 } else if (readEdgeIt->getId () == edge3.getId ()) {
722- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
723- !readEdgeIt->isDirected ().value ());
706+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
724707 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
725708 node1.getUserId ());
726709 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node1.getData ());
@@ -769,10 +752,8 @@ TEST(RWOutputTest, test_20) {
769752
770753 for (const auto &readEdgeIt : readEdge) {
771754 if (readEdgeIt->getId () == edge1.getId ()) {
772- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
773- readEdgeIt->isDirected ().value ());
774- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
775- readEdgeIt->isWeighted ().value ());
755+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
756+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
776757 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
777758 ->getWeight (),
778759 5 );
@@ -783,21 +764,17 @@ TEST(RWOutputTest, test_20) {
783764 node2.getUserId ());
784765 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node2.getData ());
785766 } else if (readEdgeIt->getId () == edge2.getId ()) {
786- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
787- readEdgeIt->isDirected ().value ());
788- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
789- !readEdgeIt->isWeighted ().value ());
767+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
768+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{false });
790769 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
791770 node2.getUserId ());
792771 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node2.getData ());
793772 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
794773 node3.getUserId ());
795774 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node3.getData ());
796775 } else if (readEdgeIt->getId () == edge3.getId ()) {
797- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
798- !readEdgeIt->isDirected ().value ());
799- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
800- readEdgeIt->isWeighted ().value ());
776+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
777+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
801778 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
802779 ->getWeight (),
803780 6 );
@@ -882,10 +859,8 @@ TEST(RWOutputTest, test_22) {
882859
883860 for (const auto &readEdgeIt : readEdge) {
884861 if (readEdgeIt->getId () == edge1.getId ()) {
885- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
886- readEdgeIt->isDirected ().value ());
887- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
888- readEdgeIt->isWeighted ().value ());
862+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
863+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
889864 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
890865 ->getWeight (),
891866 5 );
@@ -896,21 +871,17 @@ TEST(RWOutputTest, test_22) {
896871 node2.getUserId ());
897872 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node2.getData ());
898873 } else if (readEdgeIt->getId () == edge2.getId ()) {
899- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
900- readEdgeIt->isDirected ().value ());
901- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
902- !readEdgeIt->isWeighted ().value ());
874+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
875+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{false });
903876 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
904877 node2.getUserId ());
905878 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node2.getData ());
906879 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
907880 node3.getUserId ());
908881 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node3.getData ());
909882 } else if (readEdgeIt->getId () == edge3.getId ()) {
910- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
911- !readEdgeIt->isDirected ().value ());
912- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
913- readEdgeIt->isWeighted ().value ());
883+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
884+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
914885 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
915886 ->getWeight (),
916887 6 );
@@ -1022,10 +993,8 @@ TEST(RWOutputTest, test_25) {
1022993
1023994 for (const auto &readEdgeIt : readEdge) {
1024995 if (readEdgeIt->getId () == edge1.getId ()) {
1025- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
1026- readEdgeIt->isDirected ().value ());
1027- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
1028- readEdgeIt->isWeighted ().value ());
996+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
997+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
1029998 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
1030999 ->getWeight (),
10311000 5 );
@@ -1036,21 +1005,17 @@ TEST(RWOutputTest, test_25) {
10361005 node2.getUserId ());
10371006 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node2.getData ());
10381007 } else if (readEdgeIt->getId () == edge2.getId ()) {
1039- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
1040- readEdgeIt->isDirected ().value ());
1041- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
1042- !readEdgeIt->isWeighted ().value ());
1008+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
1009+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{false });
10431010 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
10441011 node2.getUserId ());
10451012 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node2.getData ());
10461013 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
10471014 node3.getUserId ());
10481015 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node3.getData ());
10491016 } else if (readEdgeIt->getId () == edge3.getId ()) {
1050- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
1051- !readEdgeIt->isDirected ().value ());
1052- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
1053- readEdgeIt->isWeighted ().value ());
1017+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
1018+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
10541019 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
10551020 ->getWeight (),
10561021 6 );
@@ -1189,10 +1154,8 @@ TEST(RWOutputTest, test_29) {
11891154
11901155 for (const auto &readEdgeIt : readEdge) {
11911156 if (readEdgeIt->getId () == edge1.getId ()) {
1192- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
1193- readEdgeIt->isDirected ().value ());
1194- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
1195- readEdgeIt->isWeighted ().value ());
1157+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
1158+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
11961159 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
11971160 ->getWeight (),
11981161 5 );
@@ -1203,21 +1166,17 @@ TEST(RWOutputTest, test_29) {
12031166 node2.getUserId ());
12041167 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node2.getData ());
12051168 } else if (readEdgeIt->getId () == edge2.getId ()) {
1206- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
1207- readEdgeIt->isDirected ().value ());
1208- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
1209- !readEdgeIt->isWeighted ().value ());
1169+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{true });
1170+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{false });
12101171 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getUserId (),
12111172 node2.getUserId ());
12121173 ASSERT_EQ (readEdgeIt->getNodePair ().first ->getData (), node2.getData ());
12131174 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getUserId (),
12141175 node3.getUserId ());
12151176 ASSERT_EQ (readEdgeIt->getNodePair ().second ->getData (), node3.getData ());
12161177 } else if (readEdgeIt->getId () == edge3.getId ()) {
1217- ASSERT_TRUE (readEdgeIt->isDirected ().has_value () &&
1218- !readEdgeIt->isDirected ().value ());
1219- ASSERT_TRUE (readEdgeIt->isWeighted ().has_value () &&
1220- readEdgeIt->isWeighted ().value ());
1178+ ASSERT_EQ (readEdgeIt->isDirected (), std::optional<bool >{false });
1179+ ASSERT_EQ (readEdgeIt->isWeighted (), std::optional<bool >{true });
12211180 ASSERT_EQ ((dynamic_cast <const CXXGraph::Weighted *>(readEdgeIt.get ()))
12221181 ->getWeight (),
12231182 6 );
0 commit comments