cvc4_add_cxx_unit_test_black(floatingpoint_black util)
endif()
cvc4_add_cxx_unit_test_black(integer_black util)
-cvc4_add_cxx_unit_test_white(integer_white util)
+cvc4_add_unit_test_white(integer_white util)
cvc4_add_cxx_unit_test_black(output_black util)
cvc4_add_cxx_unit_test_black(rational_black util)
cvc4_add_cxx_unit_test_white(rational_white util)
--- /dev/null
+/********************* */
+/*! \file integer_white.cpp
+ ** \verbatim
+ ** Top contributors (to current version):
+ ** Aina Niemetz, Tim King
+ ** 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::Integer.
+ **
+ ** White box testing of CVC4::Integer.
+ **/
+
+#include <sstream>
+
+#include "test.h"
+#include "util/integer.h"
+
+namespace CVC4 {
+namespace test {
+
+class TestUtilWhiteInteger : public TestInternal
+{
+ protected:
+ static const char* s_large_val;
+};
+
+const char* TestUtilWhiteInteger::s_large_val =
+ "4547897890548754897897897897890789078907890";
+
+TEST_F(TestUtilWhiteInteger, hash)
+{
+ Integer large(s_large_val);
+ Integer zero;
+ Integer fits_in_2_bytes(55890);
+ Integer fits_in_16_bytes("7890D789D33234027890D789D3323402", 16);
+
+ ASSERT_NO_THROW(zero.hash());
+ ASSERT_NO_THROW(fits_in_2_bytes.hash());
+ ASSERT_NO_THROW(fits_in_16_bytes.hash());
+ ASSERT_NO_THROW(large.hash());
+}
+
+/** Make sure we can handle: http://www.ginac.de/CLN/cln_3.html#SEC15 */
+TEST_F(TestUtilWhiteInteger, construction)
+{
+ const int32_t i = (1 << 29) + 1;
+ const uint32_t u = (1 << 29) + 1;
+ ASSERT_EQ(Integer(i), Integer(i));
+ ASSERT_EQ(Integer(u), Integer(u));
+}
+} // namespace test
+} // namespace CVC4
+++ /dev/null
-/********************* */
-/*! \file integer_white.h
- ** \verbatim
- ** Top contributors (to current version):
- ** Tim King, Morgan Deters
- ** 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::Integer.
- **
- ** White box testing of CVC4::Integer.
- **/
-
-#include <cxxtest/TestSuite.h>
-#include <sstream>
-
-#include "util/integer.h"
-
-using namespace CVC4;
-using namespace std;
-
-const char* largeVal = "4547897890548754897897897897890789078907890";
-
-
-class IntegerWhite : public CxxTest::TestSuite {
-public:
-
- void testHash(){
- Integer large (largeVal);
- Integer zero;
- Integer fits_in_2_bytes(55890);
- Integer fits_in_16_bytes("7890D789D33234027890D789D3323402", 16);
-
-
- TS_ASSERT_THROWS_NOTHING(zero.hash());
- TS_ASSERT_THROWS_NOTHING(fits_in_2_bytes.hash());
- TS_ASSERT_THROWS_NOTHING(fits_in_16_bytes.hash());
- TS_ASSERT_THROWS_NOTHING(large.hash());
- }
-
- //Make sure we can properly handle:
- //http://www.ginac.de/CLN/cln_3.html#SEC15
- void testConstruction(){
- const int i_above2tothe29 = (1 << 29) + 1;
- const unsigned int u_above2tothe29 = (1 << 29) + 1;
- TS_ASSERT_EQUALS(Integer(i_above2tothe29), Integer((long)i_above2tothe29));
- TS_ASSERT_EQUALS(Integer(u_above2tothe29),
- Integer((unsigned long)u_above2tothe29));
-
- }
-};