@@ -170,3 +170,45 @@ TEST(TestDate, getOffset)
170170 offset = mio::get_offset_in_days ({2019 , 11 , 30 }, {2020 , 11 , 30 });
171171 EXPECT_EQ (offset, -366 );
172172}
173+
174+ TEST (TestDate, toIsoString)
175+ {
176+ EXPECT_EQ (mio::Date (2020 , 9 , 2 ).to_iso_string (), " 2020-09-02" );
177+ EXPECT_EQ (mio::Date (2021 , 8 , 30 ).to_iso_string (), " 2021-08-30" );
178+ EXPECT_EQ (mio::Date (2021 , 3 , 4 ).to_iso_string (), " 2021-03-04" );
179+ EXPECT_EQ (mio::Date (2021 , 1 , 1 ).to_iso_string (), " 2021-01-01" );
180+ EXPECT_EQ (mio::Date (2020 , 2 , 29 ).to_iso_string (), " 2020-02-29" );
181+ }
182+
183+ TEST (TestDate, streamOutput)
184+ {
185+ std::ostringstream oss1;
186+ oss1 << mio::Date (2020 , 9 , 2 );
187+ EXPECT_EQ (oss1.str (), " 2020-09-02" );
188+
189+ std::ostringstream oss2;
190+ oss2 << mio::Date (2021 , 8 , 30 );
191+ EXPECT_EQ (oss2.str (), " 2021-08-30" );
192+
193+ std::ostringstream oss3;
194+ oss3 << mio::Date (2021 , 3 , 4 );
195+ EXPECT_EQ (oss3.str (), " 2021-03-04" );
196+
197+ std::ostringstream oss4;
198+ oss4 << mio::Date (2021 , 1 , 1 );
199+ EXPECT_EQ (oss4.str (), " 2021-01-01" );
200+
201+ std::ostringstream oss5;
202+ oss5 << mio::Date (2020 , 2 , 29 );
203+ EXPECT_EQ (oss5.str (), " 2020-02-29" );
204+ }
205+
206+ TEST (TestDate, formatViaFmt)
207+ {
208+ EXPECT_EQ (fmt::format (" {}" , mio::Date (2020 , 9 , 2 )), " 2020-09-02" );
209+ EXPECT_EQ (fmt::format (" {}" , mio::Date (2021 , 8 , 30 )), " 2021-08-30" );
210+ EXPECT_EQ (fmt::format (" {}" , mio::Date (2021 , 1 , 1 )), " 2021-01-01" );
211+ EXPECT_EQ (fmt::format (" {}" , mio::Date (2020 , 2 , 29 )), " 2020-02-29" );
212+ EXPECT_EQ (fmt::format (" {}" , mio::Date (2021 , 3 , 4 )), " 2021-03-04" );
213+ EXPECT_EQ (fmt::format (" Todays date is: {}" , mio::Date (2021 , 12 , 31 )), " Todays date is: 2021-12-31" );
214+ }
0 commit comments