google test: context: Migrate cdmap_white. (#5585)
authorAina Niemetz <aina.niemetz@gmail.com>
Fri, 4 Dec 2020 18:54:46 +0000 (10:54 -0800)
committerGitHub <noreply@github.com>
Fri, 4 Dec 2020 18:54:46 +0000 (12:54 -0600)
test/unit/context/CMakeLists.txt
test/unit/context/cdmap_white.cpp [new file with mode: 0644]
test/unit/context/cdmap_white.h [deleted file]

index d19ad60c0aec3d92861efd52e1cacbf0e48ea571..a9204033acec786e3399edf3bfe691fbf4845138 100644 (file)
@@ -13,7 +13,7 @@
 
 cvc4_add_unit_test_black(cdlist_black context)
 cvc4_add_unit_test_black(cdmap_black context)
-cvc4_add_cxx_unit_test_white(cdmap_white context)
+cvc4_add_unit_test_white(cdmap_white context)
 cvc4_add_cxx_unit_test_black(cdo_black context)
 cvc4_add_cxx_unit_test_black(context_black context)
 cvc4_add_cxx_unit_test_black(context_mm_black context)
diff --git a/test/unit/context/cdmap_white.cpp b/test/unit/context/cdmap_white.cpp
new file mode 100644 (file)
index 0000000..4e71b3a
--- /dev/null
@@ -0,0 +1,47 @@
+/*********************                                                        */
+/*! \file cdmap_white.cpp
+ ** \verbatim
+ ** Top contributors (to current version):
+ **   Aina Niemetz, Morgan Deters, Dejan Jovanovic
+ ** This file is part of the CVC4 project.
+ ** Copyright (c) 2009-2020 by the authors listed in the file AUTHORS
+ ** in the top-level source directory and their institutional affiliations.
+ ** All rights reserved.  See the file COPYING in the top-level source
+ ** directory for licensing information.\endverbatim
+ **
+ ** \brief White box testing of CVC4::context::CDMap<>.
+ **
+ ** White box testing of CVC4::context::CDMap<>.
+ **/
+
+#include "base/check.h"
+#include "context/cdhashmap.h"
+#include "test_context.h"
+
+namespace CVC4 {
+
+using namespace context;
+
+namespace test {
+
+class TestContextCDMapWhite : public TestContext
+{
+};
+
+TEST_F(TestContextCDMapWhite, unreachable_save_and_restore)
+{
+  CDHashMap<int, int> map(d_context.get());
+
+  ASSERT_NO_THROW(map.makeCurrent());
+
+  ASSERT_DEATH(map.update(), "Unreachable code reached");
+
+  ASSERT_DEATH(map.save(d_context->getCMM()), "Unreachable code reached");
+  ASSERT_DEATH(map.restore(&map), "Unreachable code reached");
+
+  d_context->push();
+  ASSERT_DEATH(map.makeCurrent(), "Unreachable code reached");
+}
+
+}  // namespace test
+}  // namespace CVC4
diff --git a/test/unit/context/cdmap_white.h b/test/unit/context/cdmap_white.h
deleted file mode 100644 (file)
index 7b2f7f8..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*********************                                                        */
-/*! \file cdmap_white.h
- ** \verbatim
- ** Top contributors (to current version):
- **   Morgan Deters, Mathias Preiner, Andres Noetzli
- ** This file is part of the CVC4 project.
- ** Copyright (c) 2009-2020 by the authors listed in the file AUTHORS
- ** in the top-level source directory and their institutional affiliations.
- ** All rights reserved.  See the file COPYING in the top-level source
- ** directory for licensing information.\endverbatim
- **
- ** \brief White box testing of CVC4::context::CDMap<>.
- **
- ** White box testing of CVC4::context::CDMap<>.
- **/
-
-#include <cxxtest/TestSuite.h>
-
-#include "base/check.h"
-#include "context/cdhashmap.h"
-#include "test_utils.h"
-
-using namespace std;
-using namespace CVC4;
-using namespace CVC4::context;
-
-class CDMapWhite : public CxxTest::TestSuite {
-
-  Context* d_context;
-
- public:
-  void setUp() override { d_context = new Context; }
-
-  void tearDown() override { delete d_context; }
-
-  void testUnreachableSaveAndRestore()
-  {
-    CDHashMap<int, int> map(d_context);
-
-    TS_ASSERT_THROWS_NOTHING(map.makeCurrent());
-
-    TS_UTILS_EXPECT_ABORT(map.update());
-
-    TS_UTILS_EXPECT_ABORT(map.save(d_context->getCMM()));
-    TS_UTILS_EXPECT_ABORT(map.restore(&map));
-
-    d_context->push();
-    TS_UTILS_EXPECT_ABORT(map.makeCurrent());
-  }
-};