[cscore] Translate unit tests to catch2 (#8999)

This commit is contained in:
Peter Johnson
2026-06-21 13:49:07 -07:00
committed by GitHub
parent f1c9d82d50
commit 50eab65b07
6 changed files with 13 additions and 19 deletions

View File

@@ -223,10 +223,10 @@ wpilib_jni_java_library(
cc_test(
name = "cscore-cpp-test",
size = "small",
srcs = glob(["src/test/native/**"]),
srcs = glob(["src/test/native/**/*.cpp"]),
deps = [
":cscore",
"//thirdparty/googletest",
"//thirdparty/catch2",
],
)

View File

@@ -76,6 +76,6 @@ foreach(example ${cscore_examples})
endforeach()
if(WITH_TESTS)
wpilib_add_test(cscore src/test/native/cpp)
target_link_libraries(cscore_test cscore googletest)
wpilib_add_test_catch2(cscore src/test/native/cpp)
target_link_libraries(cscore_test cscore)
endif()

View File

@@ -3,6 +3,7 @@ import org.gradle.internal.os.OperatingSystem
ext {
nativeName = 'cscore'
devMain = 'org.wpilib.cscore.DevMain'
nativeTestSuiteName = "${nativeName}Catch2Test"
}
// Removed because having the objective-cpp plugin added breaks
@@ -70,7 +71,7 @@ ext {
sharedCvConfigs = [cscore : [],
cscoreBase: [],
cscoreDev : [],
cscoreTest: [],
(nativeTestSuiteName): [],
cscoreJNIShared: []]
staticCvConfigs = [cscoreJNI: [],
cscoreJNICvStatic: []]

View File

@@ -2,19 +2,14 @@
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#include <gtest/gtest.h>
#include <catch2/catch_test_macros.hpp>
#include "wpi/cs/HttpCamera.hpp"
#include "wpi/cs/cscore_cpp.hpp"
namespace wpi::cs {
class CameraSourceTest : public ::testing::Test {
protected:
CameraSourceTest() = default;
};
TEST_F(CameraSourceTest, HTTPCamera) {
TEST_CASE("CameraSourceTest HTTPCamera", "[cscore][camera-source]") {
auto source = HttpCamera("camera", "http://localhost:8000");
wpi::cs::Shutdown();
}

View File

@@ -4,15 +4,15 @@
#include "wpi/cs/RawSource.hpp"
#include <gtest/gtest.h>
#include <catch2/catch_test_macros.hpp>
namespace wpi::cs {
TEST(RawSourceTest, CreateEmpty) {
TEST_CASE("RawSourceTest CreateEmpty", "[cscore][raw-source]") {
RawSource source;
}
TEST(RawSourceTest, Create) {
TEST_CASE("RawSourceTest Create", "[cscore][raw-source]") {
RawSource source("test", wpi::util::PixelFormat::BGR, 640, 480, 30);
}

View File

@@ -2,10 +2,8 @@
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#include <gtest/gtest.h>
#include <catch2/catch_session.hpp>
int main(int argc, char** argv) {
::testing::InitGoogleTest(&argc, argv);
int ret = RUN_ALL_TESTS();
return ret;
return Catch::Session().run(argc, argv);
}