11#include " DynamicArrayOf.h"
22
33#include " Array.h"
4+ #include " DynamicArrayOf.AsHex.ostream.h"
45#include " DynamicArrayOf.equals.h"
56#include " DynamicArrayOf.ostream.h"
67#include " SliceOf.carray.h"
@@ -151,7 +152,7 @@ struct Vec3 {
151152 bool operator ==(const Vec3&) const = default ;
152153
153154 [[maybe_unused]] friend auto operator <<(std::ostream& o, const Vec3& v) -> std::ostream& {
154- return o << " x:" << v.x << " , y:" << v.y << " , z:" << v.z ;
155+ return o << " { x:" << v.x << " , y:" << v.y << " , z:" << v.z << ' } ' ;
155156 }
156157};
157158
@@ -165,6 +166,24 @@ TEST(DynamicArrayOf, EmplaceStruct) {
165166 EXPECT_EQ (v, v2);
166167}
167168
169+ TEST (DynamicArrayOf, Ostream) {
170+ auto s = std::stringstream{};
171+ s << DynamicArrayOf{10 , 11 , 16 };
172+ EXPECT_EQ (s.str (), " [10, 11, 16]" );
173+ }
174+
175+ TEST (DynamicArrayOf, OstreamStruct) {
176+ auto s = std::stringstream{};
177+ s << DynamicArrayOf{Vec3{1.1 , 2.2 , 3.3 }, Vec3{10 , 11 , 16 }};
178+ EXPECT_EQ (s.str (), " [{x:1.1, y:2.2, z:3.3}, {x:10, y:11, z:16}]" );
179+ }
180+
181+ TEST (DynamicArrayOf, OstreamAsHex) {
182+ auto s = std::stringstream{};
183+ s << AsHex{DynamicArrayOf<uint8_t >{uint8_t {10 }, uint8_t {11 }, uint8_t {16 }}};
184+ EXPECT_EQ (s.str (), " [0a, 0b, 10]" );
185+ }
186+
168187namespace {
169188
170189struct Recorder {
0 commit comments