From a57ce183a1a3117161e35ad7c1d0d6fe83fb8147 Mon Sep 17 00:00:00 2001 From: Ronald Caesar Date: Sat, 8 Nov 2025 15:41:04 -0400 Subject: [PATCH] extern/googletest: Add testing library Need a testing framework to test the IR layer. GoogleTest is a popular choice so it was chosen. Signed-off-by: Ronald Caesar --- .gitmodules | 3 +++ 3rd_Party/PINNED_DEPENDENCIES.md | 10 ++++++++++ 3rd_Party/googletest | 1 + CMakeLists.txt | 2 ++ 4 files changed, 16 insertions(+) create mode 160000 3rd_Party/googletest diff --git a/.gitmodules b/.gitmodules index 4825855..82a9e4c 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "3rd_Party/imgui"] path = 3rd_Party/imgui url = https://github.com/ocornut/imgui.git +[submodule "3rd_Party/googletest"] + path = 3rd_Party/googletest + url = https://github.com/google/googletest.git diff --git a/3rd_Party/PINNED_DEPENDENCIES.md b/3rd_Party/PINNED_DEPENDENCIES.md index 130e103..5a45c82 100644 --- a/3rd_Party/PINNED_DEPENDENCIES.md +++ b/3rd_Party/PINNED_DEPENDENCIES.md @@ -32,3 +32,13 @@ This document tracks all pinned third-party submodules in the Pound project. Eac - **Last Review**: 2025-09-20 - **Next Review**: 2026-03-20 +### GoogleTest +- **Repository**: https://github.com/google/googletest +- **Version Tag**: v1.17.0 +- **Commit Hash**: 52eb8108c5bdec04579160ae17225d66034bd723 +- **License**: BSD-3-Clause +- **Purpose**: Provides the testing and mocking framework for Pound. +- **Pinning Date**: 2025-11-09 +- **Pinning Reason**: Dependency added for the first time. +- **Last Review**: 2025-11-09 +- **Next Review**: 2026-05-09 diff --git a/3rd_Party/googletest b/3rd_Party/googletest new file mode 160000 index 0000000..52eb810 --- /dev/null +++ b/3rd_Party/googletest @@ -0,0 +1 @@ +Subproject commit 52eb8108c5bdec04579160ae17225d66034bd723 diff --git a/CMakeLists.txt b/CMakeLists.txt index 08fb491..ee82df7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -80,6 +80,8 @@ foreach(line ${submodule_lines}) verify_pinned_commit("imgui" "${submodule_path}" "${commit_hash}" "bf75bfec48fc00f532af8926130b70c0e26eb099") elseif(submodule_path STREQUAL "3rd_Party/SDL3") verify_pinned_commit("SDL3" "${submodule_path}" "${commit_hash}" "a96677bdf6b4acb84af4ec294e5f60a4e8cbbe03") + elseif(submodule_path STREQUAL "3rd_Party/googletest") + verify_pinned_commit("SDL3" "${submodule_path}" "${commit_hash}" "52eb8108c5bdec04579160ae17225d66034bd723") endif() message(STATUS "Verified submodule: ${submodule_path} (${commit_hash})")