Add failure tests to APInt unit test.
authorErick Tryzelaar <idadesub@users.sourceforge.net>
Sun, 16 Aug 2009 23:36:01 +0000 (23:36 +0000)
committerErick Tryzelaar <idadesub@users.sourceforge.net>
Sun, 16 Aug 2009 23:36:01 +0000 (23:36 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79209 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/ADT/APIntTest.cpp

index 4a6b176..207c633 100644 (file)
@@ -172,4 +172,15 @@ TEST(APIntTest, fromString) {
   EXPECT_EQ(APInt(1, 1), APInt(1, "1", 16));
 }
 
+TEST(APIntTest, StringDeath) {
+  EXPECT_DEATH(APInt(0, "", 0), "bitwidth too small");
+  EXPECT_DEATH(APInt(32, "", 0), "Radix should be 2, 8, 10, or 16!");
+  EXPECT_DEATH(APInt(32, "", 10), "Invalid string length");
+  EXPECT_DEATH(APInt(32, "-", 10), "string is only a minus!");
+  EXPECT_DEATH(APInt(1, "1234", 10), "Insufficient bit width");
+  EXPECT_DEATH(APInt(32, "\0", 10), "Invalid string length");
+  EXPECT_DEATH(APInt(32, StringRef("1\02", 3), 10), "Invalid character in digit string");
+  EXPECT_DEATH(APInt(32, "1L", 10), "Invalid character in digit string");
+}
+
 }