Ticket #2635: main.cpp

File main.cpp, 1.2 KB (added by anonymous, 14 years ago)
Line 
1
2#include <boost/date_time/local_time/local_time.hpp>
3#include <boost/test/unit_test.hpp>
4#include <sstream>
5#include <iostream>
6
7namespace {
8
9namespace LT = boost::local_time;
10
11bool isConvertableToLocalDateTime(const std::string& value)
12{
13 LT::local_time_input_facet* input_facet = new LT::local_time_input_facet();
14 input_facet->format("%Y-%m-%d");
15 std::stringstream ss;
16 ss.imbue(std::locale(std::locale::classic(), input_facet));
17 ss.str(value);
18 LT::local_date_time ldt(LT::not_a_date_time);
19 ss >> ldt;
20 std::cout << "ldt " << ldt << std::endl;
21 return !ss.fail();
22}
23
24} // anonymous namespace
25
26void simple_date_time_test()
27{
28 // data with one digit month
29 BOOST_CHECK( ! isConvertableToLocalDateTime("1999-1-01") ); // isConvertableToLocalDateTime returns true but false is expected
30
31 // data with rubbish suffix
32 BOOST_CHECK( ! isConvertableToLocalDateTime("1999-1-01_to_be_or_not_to_be") ); // isConvertableToLocalDateTime returns true but false is expected
33}
34
35using boost::unit_test::test_suite;
36
37test_suite* init_unit_test_suite(int argc, char* argv[])
38{
39 test_suite* test = BOOST_TEST_SUITE("simple_date_time_test");
40 test->add( BOOST_TEST_CASE( &simple_date_time_test ) );
41 return test;
42}