47 FileOptions tool(
"INT1=1;NUL1;STR1=ABC;DBL1=1.0;dbl2=2.0;DBL3=3.0;INT2=2;nul2;NUL3;INT3=3;str2=once upon a "
48 "time;str3==fubar=;;INTS=1-3,5,6;DBLS=1.0,2.0, 3.0;STRS=var1, var2_var2;STRS2=" );
56 rval = tool.get_option(
"STR1", s );
61 rval = tool.get_option(
"STR1", s );
66 rval = tool.get_option(
"NUL2", s );
68 EQUAL( s.empty(),
true );
71 rval = tool.get_null_option(
"nul1" );
75 rval = tool.get_null_option(
"INT1" );
79 rval = tool.get_int_option(
"int1", i );
83 rval = tool.get_int_option(
"int2", i );
88 rval = tool.get_int_option(
"dbl2", i );
92 rval = tool.get_int_option(
"NUL3", i );
96 rval = tool.get_real_option(
"dbl1", d );
100 rval = tool.get_real_option(
"dbl2", d );
104 rval = tool.get_real_option(
"int3", d );
109 rval = tool.get_real_option(
"str2", d );
113 rval = tool.get_real_option(
"NUL3", d );
117 rval = tool.get_str_option(
"DBL3", s );
122 rval = tool.get_str_option(
"STR2", s );
124 EQUAL( s,
"once upon a time" );
127 rval = tool.get_str_option(
"nul3", s );
131 EQUAL(
false, tool.all_seen() );
132 rval = tool.get_unseen_option( s );
138 rval = tool.get_option(
"NUL3", s );
140 EQUAL( s.empty(),
true );
142 rval = tool.get_option(
"STR3", s );
144 EQUAL( s,
"=fubar=" );
147 unsigned l = tool.size();
151 std::vector< int > ivals;
152 rval = tool.get_ints_option(
"INTS", ivals );
154 EQUAL( 5, ivals.size() );
155 EQUAL( 1, ivals[0] );
156 EQUAL( 2, ivals[1] );
157 EQUAL( 3, ivals[2] );
158 EQUAL( 5, ivals[3] );
159 EQUAL( 6, ivals[4] );
162 std::vector< double > vals;
163 rval = tool.get_reals_option(
"DBLS", vals );
165 EQUAL( 3, vals.size() );
166 EQUAL( 1.0, vals[0] );
167 EQUAL( 2.0, vals[1] );
168 EQUAL( 3.0, vals[2] );
171 std::vector< std::string > svals;
172 rval = tool.get_strs_option(
"STRS", svals );
174 EQUAL( 2, svals.size() );
175 EQUAL(
"var1", svals[0] );
176 EQUAL(
"var2_var2", svals[1] );
179 rval = tool.get_strs_option(
"STRS2", svals );
183 EQUAL(
true, tool.all_seen() );
184 rval = tool.get_unseen_option( s );
194 EQUAL(
false, tool2.all_seen() );
195 rval = tool2.get_unseen_option( s );
199 rval = tool2.get_option(
"opt1", s );
203 rval = tool2.get_option(
"opt2", s );
212 EQUAL(
true, tool2.all_seen() );
213 rval = tool2.get_unseen_option( s );
223 EQUAL(
true, tool3.all_seen() );
230 EQUAL(
true, tool4.all_seen() );
237 EQUAL(
true, tool5.all_seen() );
243 rval = tool6.get_option(
"opt1", s );
247 rval = tool6.get_option(
"opt2", s );
265 EQUAL( tool8.size(), tool.size() );