@@ -70,7 +70,7 @@ TEST_F(TaggedArrayFixture, ArraySetFromBrackets)
7070TEST_F (TaggedArrayFixture, ArrayArrowOperator)
7171{
7272 auto lambda_customSum = [](QString previous, QJsonValue current) -> QString {return previous + current.toString (); };
73- const QString concatText = std::reduce (testObj.example_arr ->begin (), testObj.example_arr ->end (), QString (), lambda_customSum);
73+ const QString concatText = std::accumulate (testObj.example_arr ->begin (), testObj.example_arr ->end (), QString (), lambda_customSum);
7474 ASSERT_EQ (std::string (EXPECTED_REDUCED_RESULT), concatText.toStdString ());
7575}
7676
@@ -106,7 +106,7 @@ TEST_F(TaggedArrayFixture, TaggedObjectContainer)
106106TEST_F (TaggedArrayFixture, TaggedObjectContainerVectorOperations)
107107{
108108 const auto lambda_accumulateAges = [](const int previous, const Identity& curIdentity) -> int {return previous + *curIdentity.age ; };
109- const int totalAge = std::reduce (testObj.example_tagged_object_array ->cbegin (), testObj.example_tagged_object_array ->cend (), 0 , lambda_accumulateAges);
109+ const int totalAge = std::accumulate (testObj.example_tagged_object_array ->cbegin (), testObj.example_tagged_object_array ->cend (), 0 , lambda_accumulateAges);
110110
111111 ASSERT_EQ (EXPECTED_TOTAL_AGE, totalAge);
112112}
@@ -123,4 +123,24 @@ TEST_F(TaggedArrayFixture, TaggedObjectContainerMutation)
123123
124124 testObj.example_tagged_object_array [0 ] = Identity{ newObj };
125125 ASSERT_EQ (MODIFIED_AGE, *testObj.example_tagged_object_array .at (0 ).age );
126- }
126+ }
127+
128+ // QJsonObject conversions can be done on TaggedJSONArray's as well
129+ TEST_F (TaggedArrayFixture, TaggedStringArraytoQJsonObject)
130+ {
131+ const QJsonObject obj = testObj.toJsonObject ();
132+ const QJsonArray arr = obj[" example_arr" ].toArray ();
133+ ASSERT_EQ (EXPECTED_ARRAY_FIRST_ELEMENT_RESULT, arr[0 ].toString ());
134+ }
135+
136+ // Array of TaggedObjects inside a taggedObject can be converted to QJsonObject
137+ TEST_F (TaggedArrayFixture, TaggedObjectArraytoQJsonObject)
138+ {
139+ const QJsonObject obj = testObj.toJsonObject ();
140+ const QJsonArray arr = obj[" example_tagged_object_array" ].toArray ();
141+
142+ const auto lambda_accumulateAges = [](const int previous, const QJsonValue& curIdentity) -> int {return previous + curIdentity[" age" ].toInt (); };
143+ const int totalAge = std::accumulate (arr.cbegin (), arr.cend (), 0 , lambda_accumulateAges);
144+ ASSERT_EQ (EXPECTED_TOTAL_AGE, totalAge);
145+ }
146+
0 commit comments