summaryrefslogtreecommitdiff
path: root/test/unit/CMakeLists.txt
AgeCommit message (Collapse)Author
2021-11-10Reorganize test/unit/api directory. (#7612)Aina Niemetz
This moves .cpp files to directory test/unit/api/cpp and python files in test/python/unit/api to test/unit/api/python.
2021-11-09Clean up ctest configuration and CI test configuration. (#7620)Aina Niemetz
Previously, on CI, unit tests and api tests were run twice since we use a ctest exclude rule based on labels (-LE) which includes unit and api tests, but then run them separately again. This cleans up the CI test configuration. Further, unit gtest unit tests were added with gtest_add_tests, which adds every test of a unit test binary as a single test target to ctest. In theory, this may speed up testing (because more parallelism) but in practice it slows it down due to the start up overhead. It also clutters CI output. This cleans up the gtest configuration to add the gtest unit tests per test binary rather then per test of a test binary.
2021-11-04Refactor cmake to build either static or shared (#7534)Gereon Kremer
This PR simplifies the cmake setup to only build either shared or statically. It also attempts to fix windows builds, both shared and static.
2021-10-28Add support for checking if a `-Wno` flag exists before using it (#7514)Andrew V. Jones
This PR resolves that issue by checking that a -W<error-class> flag exists before trying to use the -Wno-<error-class> flag.
2021-09-30Refactor our static builds (#7251)Gereon Kremer
This PR does a major refactoring on how we organize our builds to allow both shared and static builds. We now build the libraries using object libraries to allow building the libraries both dynamically and statically in the same build folder, though the static library is optional (ENABLE_STATIC_LIBRARY). The binary is linked either dynamically or statically (depending on ENABLE_STATIC_BINARY).
2021-07-16[Unit Tests] Avoid linking against external libs (#6898)Andres Noetzli
Fixes #6866. The `theory_airth_cad_white` unit test has been failing on some platforms (e.g., macOS) due to statically linking libpoly in libcvc5 and then separately linking it in the unit tests. This resulted in issues with `static` variables. This commit fixes the issue by avoiding linking libpoly in the unit tests and instead relying solely on libcvc5. Co-authored-by: Ouyancheng <1024842937@qq.com>
2021-04-21Goodbye CVC4, hello cvc5! (#6371)Mathias Preiner
This commits changes the build system to cvc5 and removes the remaining occurrences of CVC4. It further cleans up outdated/unused scripts in contrib/.
2021-04-12Refactor and update copyright headers. (#6316)Aina Niemetz
2021-04-09Rename CVC4_ macros to CVC5_. (#6327)Aina Niemetz
2021-04-01Refactor CLN dependency & Cleanup (#6251)Gereon Kremer
This PR migrates CLN to a new Find script and adds the possibility to install CLN if not found in the system. Also, it does a bit of cleanup.
2021-03-31Refactor GMP and Poly dependencies (#6245)Gereon Kremer
Refactors GMP and libpoly to also use external projects and be available within cmake as proper targets.
2021-03-31Refactor SymFPU dependency (#6218)Gereon Kremer
This PR refactors the contrib script to download SymFPU to a cmake external project.
2021-03-29Add external project to install gtest (#6229)Gereon Kremer
This PR enables us to build gtest ourselves if it is not already installed.
2021-03-23Removing unused build options and deprecated proof compile flag (#6195)Haniel Barbosa
2021-03-17Rename test/unit/expr to test/unit/node. (#6156)Aina Niemetz
This is in preparation for renaming src/expr to src/node.
2021-03-09Update copyright headers to 2021. (#6081)Aina Niemetz
2021-03-02Remove obsolete dependency on CxxTest. (#6038)Aina Niemetz
2021-02-26Fix -Werror issues with clang and use clang for debug-cln build. (#6004)Mathias Preiner
This fixes some issues that break the nightly ASAN builds with clang.
2020-12-02google test: base: Migrate map_util_black. (#5580)Aina Niemetz
2020-12-01google test: Infrastructure and first api test. (#5548)Aina Niemetz
This sets up the infrastructure for migrating unit tests from CxxTest to Google Test. It further migrates api/datatype_api_black to the new infrastructure.
2020-11-03Add support for printing `re.loop` and `re.^` (#5392)Andres Noetzli
In the new SMT-LIB string standard, re.loop and re.^ are indexed operators but the printer was not updated to print them correctly. This commit adds support for printing re.loop and re.^.
2020-09-22Update copyright header script to support CMake and Python files (#5067)Mathias Preiner
This PR updates the update-copyright.pl script to also update/add copyright headers to CMake specific files. It further fixes a small typo in the header.
2020-09-01Removes old proof code (#4964)Haniel Barbosa
This deletes much of the old proof code. Basically everything but the minimal necessary infra-structure for producing unsat cores. That includes dependency tracking in preprocessing, the prop engine proof and the unsat core computation code in the old proof manager. These should also go once we fully integrate into master the new proof infrastructure. It also cleans interfaces that were using old-proof-code-specific constructs (such as LemmaProofRecipe). When possible or when it made sense standalone local proof production code was kept, but deactivated (such is in the equality engine and in the arithmetic solver).
2020-07-17Integration of libpoly (#4679)Gereon Kremer
This commit integrates LibPoly into CVC4. It adds `contrib/get-poly`, adds it to the configure script, cmake and places where CVC4 inspects its own build configuration. Furthermore, it adds `CVC4::RealAlgebraicNumber` (which wraps `poly::AlgebraicNumber`) including some basic unit tests and some utilities.
2019-12-06[proof] Eliminate side-condition from ER signature (#3230)Alex Ozdemir
* [proof] Eliminate the side condition in er.plf By tweaking the axioms a bit, I got rid of the lone SC in the Extended Resolution signature. * [proof] Changed er_proof.cpp in line with signature The new signature requires slightly different proof printing. * [proof] clang-format er_proof.cpp * Fix tests * [proof] Actually delete the SC * Apply suggestions from code review Co-Authored-By: yoni206 <yoni206@users.noreply.github.com> * Add LFSC-checking unit test for ER proof * Gate the lfsc invocation on the build system * Properly gate the lfsc check on the build system * gate the plf_signatures forward def on the build system
2019-11-14Use Shebang in cxxtestgen when appropriate (#3458)Alex Ozdemir
CxxTest's generator has one of three names, depending on the CxxTest version: * `cxxtestgen.py`, a python program * `cxxtestgen`, some kind of program with a shebang * `cxxtestgen.pl`, a perl program We were mistakenly assuming that the `cxxtestgen` form was always a python program. Now, if we find that form on the system, we assume that it is has a shebang, and is executable.
2019-08-08Fix issues with Ninja build system and add configure option. (#3166)Mathias Preiner
Adds option --ninja to configure.sh.
2019-07-31adding bv_gauss unit test to build files (#3135)yoni206
2019-01-06[DRAT] DRAT data structure (#2767)Alex Ozdemir
* Copied old DRAT data-structure files. Next step: clean up the code, and adapt them to our current usage plans. * Polished the DRAT class. Notably, removed the idea of lazy-parsing, this is now just a DRAT wrapper class. More explicit about whether methods handle binary or text. Better constructor patterns * Added implementation of textual DRAT output * reordered the DratInstruction structure. * removed the public modifier from the above struct * removed the operator << implementation for DratInstruction * use emplace_back * Addressing Yoni's first review * Extracted "write literal in DIMACS format" idea as a function * Replaced some spurious Debug streams with `os`. (they were left over from an earlier refactor) * Improved some documentation * Removed aside about std::string * Addressed Mathias' comments Specifically * SCREAMING_SNAKE_CASED enum variants. * Extracted some common logic from two branches of a conditional. * Cleaned out some undefined behavior from bit manipulation. * Unit tests for binary DRAT parsing * Added text output test * s/white/black/ derp
2018-10-16cmake: Add CxxTest include directory to unit test includes. (#2642)Mathias Preiner
2018-10-04New C++ API: Add checks for Sorts. (#2519)Aina Niemetz
2018-10-01cmake: Add build target build-tests to build all test dependencies. (#2558)Mathias Preiner
2018-09-27cmake: Add CxxTest finder module to allow custom paths. (#2542)Mathias Preiner
2018-09-26cmake: Fix test target dependency issues. (#2540)Mathias Preiner
2018-09-22cmake: Run make coverage in parallel by default.Mathias Preiner
2018-09-22cmake: Refactor cvc4_add_unit_test macro to support test names with '/'.Aina Niemetz
Required for consistent naming of tests, unit test names now also use the test naming scheme <category>/<subdir>/<test name>, e.g., unit/theory/theory_bv_white.
2018-09-22cmake: Do not build examples and unit and system tests by default.Aina Niemetz
2018-09-22cmake: Added target checkAina Niemetz
Targets 'check', 'units', 'systemtests' and 'regress' are now run in parallel with the number of available cores by default. This can be overriden by passing ARGS=-jN.
2018-09-22cmake: Only build libcvc4 and libcvc4parser as libraries.Mathias Preiner
The sources of all previous libraries are now added to libcvc4 and built as libcvc4. This removes circular dependencies between libcvc4 and libexpr. Further, we now only have one parser library and don't build additional libraries for each language.
2018-09-22cmake: Add dependencies for test targets and support for make coverage.Aina Niemetz
2018-09-22cmake: Enable parallel execution for test targets regress, units, systemtests.Aina Niemetz
2018-09-22cmake: Build unit tests only if -DENABLE_UNIT_TESTING=ON.Aina Niemetz
2018-09-22cmake: Disable W-suggest-override for unit tests.Mathias Preiner
2018-09-22cmake: Add target units.Aina Niemetz
2018-09-22cmake: Add support for CxxTest.Aina Niemetz
2018-09-22cmake: Added initial build infrastructure.Aina Niemetz
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback