Переглянути джерело

Test cases for Catch2 integration

default_compile_flags
vector-of-bool 5 роки тому
джерело
коміт
147ced5c9a
8 змінених файлів з 75 додано та 0 видалено
  1. +0
    -0
      tests/test_drivers/__init__.py
  2. +4
    -0
      tests/test_drivers/catch/custom-runner/package.dds
  3. +14
    -0
      tests/test_drivers/catch/custom-runner/src/testlib/calc.hpp
  4. +16
    -0
      tests/test_drivers/catch/custom-runner/src/testlib/calc.test.cpp
  5. +4
    -0
      tests/test_drivers/catch/main/package.dds
  6. +14
    -0
      tests/test_drivers/catch/main/src/testlib/calc.hpp
  7. +10
    -0
      tests/test_drivers/catch/main/src/testlib/calc.test.cpp
  8. +13
    -0
      tests/test_drivers/catch/test_catch.py

+ 0
- 0
tests/test_drivers/__init__.py Переглянути файл


+ 4
- 0
tests/test_drivers/catch/custom-runner/package.dds Переглянути файл

@@ -0,0 +1,4 @@
Name: Test
Version: 0.0.0

Test-Driver: Catch

+ 14
- 0
tests/test_drivers/catch/custom-runner/src/testlib/calc.hpp Переглянути файл

@@ -0,0 +1,14 @@
#pragma once

namespace stuff {

int calculate(int a, int b) {
int result = a + b;
if (result == 42) {
return result;
} else {
return 42;
}
}

} // namespace stuff

+ 16
- 0
tests/test_drivers/catch/custom-runner/src/testlib/calc.test.cpp Переглянути файл

@@ -0,0 +1,16 @@
#define CATCH_CONFIG_RUNNER
#include <catch2/catch.hpp>

#include <testlib/calc.hpp>

TEST_CASE("A simple test case") {
CHECK_FALSE(false);
CHECK(2 == 2);
CHECK(1 != 4);
CHECK(stuff::calculate(3, 11) == 42);
}

int main(int argc, char** argv) {
// We provide our own runner
return Catch::Session().run(argc, argv);
}

+ 4
- 0
tests/test_drivers/catch/main/package.dds Переглянути файл

@@ -0,0 +1,4 @@
Name: Test
Version: 0.0.0

Test-Driver: Catch-Main

+ 14
- 0
tests/test_drivers/catch/main/src/testlib/calc.hpp Переглянути файл

@@ -0,0 +1,14 @@
#pragma once

namespace stuff {

int calculate(int a, int b) {
int result = a + b;
if (result == 42) {
return result;
} else {
return 42;
}
}

} // namespace stuff

+ 10
- 0
tests/test_drivers/catch/main/src/testlib/calc.test.cpp Переглянути файл

@@ -0,0 +1,10 @@
#include <catch2/catch.hpp>

#include <testlib/calc.hpp>

TEST_CASE("A simple test case") {
CHECK_FALSE(false);
CHECK(2 == 2);
CHECK(1 != 4);
CHECK(stuff::calculate(3, 11) == 42);
}

+ 13
- 0
tests/test_drivers/catch/test_catch.py Переглянути файл

@@ -0,0 +1,13 @@
from tests import DDS, dds_fixture_conf, DDSFixtureParams
from dds_ci import proc


@dds_fixture_conf(
DDSFixtureParams('main', 'main'),
DDSFixtureParams('custom-runner', 'custom-runner'),
)
def test_catch_testdriver(dds: DDS):
dds.build(tests=True)
test_exe = dds.build_dir / f'test/calc{dds.exe_suffix}'
assert test_exe.exists()
assert proc.run([test_exe]).returncode == 0

Завантаження…
Відмінити
Зберегти