aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/CMakeLists.txt27
-rw-r--r--tests/test_clausifier.cc19
-rw-r--r--tests/test_discrim_tree.cc19
-rw-r--r--tests/test_prover.cc19
-rw-r--r--tests/test_resolution.cc19
-rw-r--r--tests/test_term_bank.cc19
-rw-r--r--tests/test_unification.cc19
7 files changed, 141 insertions, 0 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
new file mode 100644
index 0000000..d841595
--- /dev/null
+++ b/tests/CMakeLists.txt
@@ -0,0 +1,27 @@
+# ─── GoogleTest ───────────────────────────────────────────────────────────────
+include(FetchContent)
+FetchContent_Declare(
+ googletest
+ GIT_REPOSITORY https://github.com/google/googletest.git
+ GIT_TAG v1.14.0
+)
+# Prevent GoogleTest from overriding our compiler/linker options
+set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
+FetchContent_MakeAvailable(googletest)
+
+include(GoogleTest)
+
+# ─── Helper: define a test target ────────────────────────────────────────────
+function(atp_add_test TEST_NAME TEST_SOURCE)
+ add_executable(${TEST_NAME} ${TEST_SOURCE})
+ target_link_libraries(${TEST_NAME} PRIVATE atp_core GTest::gtest_main)
+ gtest_discover_tests(${TEST_NAME})
+endfunction()
+
+# ─── Test Targets ────────────────────────────────────────────────────────────
+atp_add_test(test_term_bank test_term_bank.cc)
+atp_add_test(test_unification test_unification.cc)
+atp_add_test(test_clausifier test_clausifier.cc)
+atp_add_test(test_resolution test_resolution.cc)
+atp_add_test(test_discrim_tree test_discrim_tree.cc)
+atp_add_test(test_prover test_prover.cc)
diff --git a/tests/test_clausifier.cc b/tests/test_clausifier.cc
new file mode 100644
index 0000000..b62ffd0
--- /dev/null
+++ b/tests/test_clausifier.cc
@@ -0,0 +1,19 @@
+/*
+ * richard-atp-engine: A saturation-based automated theorem prover for first-order logic.
+ * Copyright (C) 2026 Richard Qin
+ *
+ * This program 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.
+ *
+ * This program 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 <https://www.gnu.org/licenses/>.
+ */
+
+
diff --git a/tests/test_discrim_tree.cc b/tests/test_discrim_tree.cc
new file mode 100644
index 0000000..b62ffd0
--- /dev/null
+++ b/tests/test_discrim_tree.cc
@@ -0,0 +1,19 @@
+/*
+ * richard-atp-engine: A saturation-based automated theorem prover for first-order logic.
+ * Copyright (C) 2026 Richard Qin
+ *
+ * This program 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.
+ *
+ * This program 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 <https://www.gnu.org/licenses/>.
+ */
+
+
diff --git a/tests/test_prover.cc b/tests/test_prover.cc
new file mode 100644
index 0000000..b62ffd0
--- /dev/null
+++ b/tests/test_prover.cc
@@ -0,0 +1,19 @@
+/*
+ * richard-atp-engine: A saturation-based automated theorem prover for first-order logic.
+ * Copyright (C) 2026 Richard Qin
+ *
+ * This program 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.
+ *
+ * This program 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 <https://www.gnu.org/licenses/>.
+ */
+
+
diff --git a/tests/test_resolution.cc b/tests/test_resolution.cc
new file mode 100644
index 0000000..b62ffd0
--- /dev/null
+++ b/tests/test_resolution.cc
@@ -0,0 +1,19 @@
+/*
+ * richard-atp-engine: A saturation-based automated theorem prover for first-order logic.
+ * Copyright (C) 2026 Richard Qin
+ *
+ * This program 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.
+ *
+ * This program 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 <https://www.gnu.org/licenses/>.
+ */
+
+
diff --git a/tests/test_term_bank.cc b/tests/test_term_bank.cc
new file mode 100644
index 0000000..b62ffd0
--- /dev/null
+++ b/tests/test_term_bank.cc
@@ -0,0 +1,19 @@
+/*
+ * richard-atp-engine: A saturation-based automated theorem prover for first-order logic.
+ * Copyright (C) 2026 Richard Qin
+ *
+ * This program 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.
+ *
+ * This program 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 <https://www.gnu.org/licenses/>.
+ */
+
+
diff --git a/tests/test_unification.cc b/tests/test_unification.cc
new file mode 100644
index 0000000..b62ffd0
--- /dev/null
+++ b/tests/test_unification.cc
@@ -0,0 +1,19 @@
+/*
+ * richard-atp-engine: A saturation-based automated theorem prover for first-order logic.
+ * Copyright (C) 2026 Richard Qin
+ *
+ * This program 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.
+ *
+ * This program 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 <https://www.gnu.org/licenses/>.
+ */
+
+