summaryrefslogtreecommitdiffstats
path: root/tests/warning.cpp
diff options
context:
space:
mode:
authorTavian Barnes <tavianator@gmail.com>2009-09-11 18:01:51 +0000
committerTavian Barnes <tavianator@gmail.com>2009-09-11 18:01:51 +0000
commite2c5e2760d98144ac65c4c9f15e7675ec7852319 (patch)
treee3564072ffef9499e30b8ef2803fb5d4005ad7a8 /tests/warning.cpp
parent29de9f06dbfeae9006aa711d3aa2ef785e622eef (diff)
downloaddimension-e2c5e2760d98144ac65c4c9f15e7675ec7852319.tar.xz
Only test C++ interface - the C library is used by libdimensionxx
anyway, so we've been testing it twice for no good reason.
Diffstat (limited to 'tests/warning.cpp')
-rw-r--r--tests/warning.cpp54
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/warning.cpp b/tests/warning.cpp
new file mode 100644
index 0000000..9d74e9d
--- /dev/null
+++ b/tests/warning.cpp
@@ -0,0 +1,54 @@
+/*************************************************************************
+ * Copyright (C) 2009 Tavian Barnes <tavianator@gmail.com> *
+ * *
+ * This file is part of The Dimension Test Suite. *
+ * *
+ * The Dimension Test Suite is free software; you can redistribute it *
+ * and/or modify it under the terms of the GNU General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * The Dimension Test Suite is distributed in the hope that it will be *
+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty *
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program. If not, see <http://www.gnu.org/licenses/>. *
+ *************************************************************************/
+
+/* Make sure warnings don't kill us - this test should pass */
+
+#include "tests.hpp"
+
+int
+main()
+{
+ using namespace Dimension;
+
+ if (resilience() != SEVERITY_MEDIUM) {
+ return EXIT_FAILURE;
+ }
+
+ resilience(SEVERITY_LOW);
+ if (resilience() != SEVERITY_LOW) {
+ return EXIT_FAILURE;
+ }
+
+ resilience(SEVERITY_MEDIUM);
+ if (resilience() != SEVERITY_MEDIUM) {
+ return EXIT_FAILURE;
+ }
+
+ dmnsn_error(SEVERITY_LOW, "This warning is expected.");
+
+ resilience(SEVERITY_HIGH);
+ if (resilience() != SEVERITY_HIGH) {
+ return EXIT_FAILURE;
+ }
+
+ dmnsn_error(SEVERITY_LOW, "This warning is expected.");
+ dmnsn_error(SEVERITY_MEDIUM, "This warning is expected.");
+
+ return EXIT_SUCCESS;
+}