-// Copyright (C) 2009 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2009, 2015 Internet Systems Consortium, Inc. ("ISC")
//
// Permission to use, copy, modify, and/or distribute this software for any
// purpose with or without fee is hereby granted, provided that the above
const char* teststring;
};
+void raise_foobar() {
+ isc_throw(isc::BadValue, "foobar");
+}
+
TEST_F(ExceptionTest, basicMethods) {
try {
isc_throw(Exception, teststring);
}
}
+
+// Test matching message.
+TEST_F(ExceptionTest, message) {
+ try {
+ raise_foobar();
+ ADD_FAILURE() << "Expected " "raise_foobar()" \
+ " throws an exception of type " "BadValue" \
+ ".\n Actual: it throws nothing.";
+ } catch (const isc::BadValue& ex) {
+ EXPECT_EQ(std::string(ex.getMessage()), "foobar");
+ } catch (...) {
+ ADD_FAILURE() << "Expected " "raise_foobar()" \
+ " throws an exception of type " "BadValue" \
+ ".\n Actual: it throws a different type.";
+ }
+}
+
}