@@ -261,4 +261,26 @@ TEST(AutoBuffer, allocate_test)
261
261
EXPECT_EQ (6u , abuf.size ());
262
262
}
263
263
264
+ TEST (CommandLineParser, testScalar)
265
+ {
266
+ static const char * const keys3 =
267
+ " { s0 | 3 4 5 | default scalar }"
268
+ " { s1 | | single value scalar }"
269
+ " { s2 | | two values scalar (default with zeros) }"
270
+ " { s3 | | three values scalar }"
271
+ " { s4 | | four values scalar }"
272
+ " { s5 | | five values scalar }" ;
273
+
274
+ const char * argv[] = {" <bin>" , " --s1=1.1" , " --s3=1.1 2.2 3" ,
275
+ " --s4=-4.2 1 0 3" , " --s5=5 -4 3 2 1" };
276
+ const int argc = 5 ;
277
+ CommandLineParser parser (argc, argv, keys3);
278
+ EXPECT_EQ (parser.get <Scalar>(" s0" ), Scalar (3 , 4 , 5 ));
279
+ EXPECT_EQ (parser.get <Scalar>(" s1" ), Scalar (1.1 ));
280
+ EXPECT_EQ (parser.get <Scalar>(" s2" ), Scalar (0 ));
281
+ EXPECT_EQ (parser.get <Scalar>(" s3" ), Scalar (1.1 , 2.2 , 3 ));
282
+ EXPECT_EQ (parser.get <Scalar>(" s4" ), Scalar (-4.2 , 1 , 0 , 3 ));
283
+ EXPECT_EQ (parser.get <Scalar>(" s5" ), Scalar (5 , -4 , 3 , 2 ));
284
+ }
285
+
264
286
}} // namespace
0 commit comments