1 | #define BOOST_AUTO_TEST_MAIN
|
---|
2 |
|
---|
3 | #include <boost/test/auto_unit_test.hpp>
|
---|
4 | #include "const_string.hpp"
|
---|
5 |
|
---|
6 | BOOST_AUTO_TEST_CASE( constructors_test )
|
---|
7 | {
|
---|
8 | const_string cs0( "" ); // 1 //
|
---|
9 | BOOST_CHECK_EQUAL( cs0.length(), (size_t)0 );
|
---|
10 | BOOST_CHECK( cs0.is_empty() );
|
---|
11 |
|
---|
12 | const_string cs01( NULL ); // 2 //
|
---|
13 | BOOST_CHECK_EQUAL( cs01.length(), (size_t)0 );
|
---|
14 | BOOST_CHECK( cs01.is_empty() );
|
---|
15 |
|
---|
16 | const_string cs1( "test_string" ); // 3 //
|
---|
17 | BOOST_CHECK_EQUAL( std::strcmp( cs1.data(), "test_string" ), 0 );
|
---|
18 | BOOST_CHECK_EQUAL( cs1.length(), std::strlen("test_string") );
|
---|
19 |
|
---|
20 | std::string s( "test_string" ); // 4 //
|
---|
21 | const_string cs2( s );
|
---|
22 | BOOST_CHECK_EQUAL( std::strcmp( cs2.data(), "test_string" ), 0 );
|
---|
23 |
|
---|
24 | const_string cs3( cs1 ); // 5 //
|
---|
25 | BOOST_CHECK_EQUAL( std::strcmp( cs1.data(), "test_string" ), 0 );
|
---|
26 |
|
---|
27 | const_string cs4( "test_string", 4 ); // 6 //
|
---|
28 | BOOST_CHECK_EQUAL( std::strncmp( cs4.data(), "test", cs4.length() ), 0 );
|
---|
29 |
|
---|
30 | const_string cs5( s.data(), s.data() + s.length() ); // 7 //
|
---|
31 | BOOST_CHECK_EQUAL( std::strncmp( cs5.data(), "test_string", cs5.length() ), 0 );
|
---|
32 |
|
---|
33 | const_string cs_array[] = { "str1", "str2" }; // 8 //
|
---|
34 | BOOST_CHECK_EQUAL( cs_array[0].data(), "str1" );
|
---|
35 | BOOST_CHECK_EQUAL( cs_array[1].data(), "str2" );
|
---|
36 | }
|
---|
37 |
|
---|
38 |
|
---|