Sequoia
Loading...
Searching...
No Matches
RatioFreeTest.hpp
Go to the documentation of this file.
1
2// Copyright Oliver J. Rosten 2025. //
3// Distributed under the GNU GENERAL PUBLIC LICENSE, Version 3.0. //
4// (See accompanying file LICENSE.md or copy at //
5// https://www.gnu.org/licenses/gpl-3.0.en.html) //
7
8#pragma once
9
13
14namespace sequoia::testing
15{
16 class ratio_free_test final : public free_test
17 {
18 public:
19 using free_test::free_test;
20
21 [[nodiscard]]
22 std::filesystem::path source_file() const;
23
24 void run_tests();
25 private:
26 template<std::integral T>
27 void test_ratio();
28
29 template<std::floating_point T>
30 void test_ratio();
31
32 template<std::integral T, std::floating_point U>
33 void test_ratio();
34
35 template<std::integral T>
36 void test_ratio_multiply();
37
38 template<std::floating_point T>
39 void test_ratio_multiply();
40
41 template<std::integral T, std::floating_point U>
42 void test_ratio_multiply();
43
44 template<std::integral T>
45 void test_ratio_divide();
46
47 template<std::floating_point T>
48 void test_ratio_divide();
49
50 template<std::integral T, std::floating_point U>
51 void test_ratio_divide();
52 };
53}
Core functionality for the testing framework.
class template from which all concrete tests should derive.
Definition: FreeTestCore.hpp:144
Definition: RatioFreeTest.hpp:17