Strings - Fixed appendNumeric(INT64_MIN)
Couldn't work as it was trying to store the absolute value in a signed 64-bit integer.
This commit is contained in:
parent
9a3d4ad4a7
commit
db215e4baf
2 changed files with 52 additions and 58 deletions
tests
|
@ -39,7 +39,13 @@ class StringsBuilderTest : public CppUnit::TestFixture
|
|||
CPPUNIT_TEST( testAppendChar );
|
||||
CPPUNIT_TEST( testAppendUnicode );
|
||||
|
||||
CPPUNIT_TEST( testAppendNumSigned );
|
||||
CPPUNIT_TEST( testAppendNumSignedZeroB10 );
|
||||
CPPUNIT_TEST( testAppendNumSignedPositiveB10 );
|
||||
CPPUNIT_TEST( testAppendNumSignedNegativeB10 );
|
||||
CPPUNIT_TEST( testAppendNumSignedMinB10 );
|
||||
CPPUNIT_TEST( testAppendNumSignedMaxB10 );
|
||||
CPPUNIT_TEST( testAppendNumSignedRest );
|
||||
|
||||
CPPUNIT_TEST( testAppendNumUnsigned );
|
||||
CPPUNIT_TEST( testAppendNumFloat );
|
||||
|
||||
|
@ -134,7 +140,13 @@ public:
|
|||
void testAppendChar( );
|
||||
void testAppendUnicode( );
|
||||
|
||||
void testAppendNumSigned( );
|
||||
void testAppendNumSignedZeroB10( );
|
||||
void testAppendNumSignedPositiveB10( );
|
||||
void testAppendNumSignedNegativeB10( );
|
||||
void testAppendNumSignedMinB10( );
|
||||
void testAppendNumSignedMaxB10( );
|
||||
void testAppendNumSignedRest( );
|
||||
|
||||
void testAppendNumUnsigned( );
|
||||
void testAppendNumFloat( );
|
||||
|
||||
|
@ -546,15 +558,39 @@ void StringsBuilderTest::testAppendUnicode( )
|
|||
CPPUNIT_ASSERT( !memcmp( sbo.data( ) , t , sz ) ); \
|
||||
}
|
||||
|
||||
void StringsBuilderTest::testAppendNumSigned( )
|
||||
void StringsBuilderTest::testAppendNumSignedZeroB10( )
|
||||
{
|
||||
T_StringBuilder sbo;
|
||||
sbo.clear( ).appendNumeric( int64_t( 1 ) ); M_CHECK_( "1" );
|
||||
sbo.clear( ).appendNumeric( int64_t( 0 ) ); M_CHECK_( "0" );
|
||||
sbo.clear( ).appendNumeric( int64_t( -1 ) ); M_CHECK_( "-1" );
|
||||
sbo.clear( ).appendNumeric( int64_t( 1234 ) ); M_CHECK_( "1234" );
|
||||
sbo.clear( ).appendNumeric( int64_t( -1234 ) ); M_CHECK_( "-1234" );
|
||||
}
|
||||
|
||||
void StringsBuilderTest::testAppendNumSignedNegativeB10( )
|
||||
{
|
||||
T_StringBuilder sbo;
|
||||
sbo.clear( ).appendNumeric( int64_t( -1234 ) ); M_CHECK_( "-1234" );
|
||||
}
|
||||
|
||||
void StringsBuilderTest::testAppendNumSignedPositiveB10( )
|
||||
{
|
||||
T_StringBuilder sbo;
|
||||
sbo.clear( ).appendNumeric( int64_t( 1234 ) ); M_CHECK_( "1234" );
|
||||
}
|
||||
|
||||
void StringsBuilderTest::testAppendNumSignedMinB10( )
|
||||
{
|
||||
T_StringBuilder sbo;
|
||||
sbo.clear( ).appendNumeric( int64_t( INT64_MIN ) ); M_CHECK_( "-9223372036854775808" );
|
||||
}
|
||||
|
||||
void StringsBuilderTest::testAppendNumSignedMaxB10( )
|
||||
{
|
||||
T_StringBuilder sbo;
|
||||
sbo.clear( ).appendNumeric( int64_t( INT64_MAX ) ); M_CHECK_( "9223372036854775807" );
|
||||
}
|
||||
|
||||
void StringsBuilderTest::testAppendNumSignedRest( )
|
||||
{
|
||||
T_StringBuilder sbo;
|
||||
sbo.clear( ).appendNumeric( int64_t( 129 ) , 2 );
|
||||
M_CHECK_( "10000001" );
|
||||
sbo.clear( ).appendNumeric( int64_t( -129 ) , 2 );
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue