diff --git a/testdivision.cpp b/testdivision.cpp index be275361e..dd9ea52c0 100644 --- a/testdivision.cpp +++ b/testdivision.cpp @@ -39,6 +39,8 @@ public: TEST_CASE( division3 ); TEST_CASE( division4 ); TEST_CASE( division5 ); + TEST_CASE( division6 ); + TEST_CASE( division7 ); } void division1() @@ -101,6 +103,26 @@ public: ); ASSERT_EQUALS( std::string(""), errout.str() ); } + + void division6() + { + check( "void foo()\n" + "{\n" + " unsigned int val = 32;\n" + " int i = val / -2;\n" + ); + ASSERT_EQUALS( std::string("[test.cpp:4]: The division result will be wrong\n"), errout.str() ); + } + + void division7() + { + check( "void foo()\n" + "{\n" + " unsigned int val = 32;\n" + " int i = -96 / val;\n" + ); + ASSERT_EQUALS( std::string("[test.cpp:4]: The division result will be wrong\n"), errout.str() ); + } }; REGISTER_FIXTURE( TestDivision )