1 | #include "DecisionForestRuntimeTest.h" |
2 | #include "decision_forest_model/CategoricalFeature.h" |
3 | #include "gtest/gtest.h" |
4 | |
5 | namespace clang { |
6 | namespace clangd { |
7 | |
8 | TEST(DecisionForestRuntime, Evaluate) { |
9 | using Example = ::ns1::ns2::test::Example; |
10 | using Cat = ::ns1::ns2::TestEnum; |
11 | using ::ns1::ns2::test::Evaluate; |
12 | |
13 | Example E; |
14 | E.setANumber(200); // True |
15 | E.setAFloat(0); // True: +10.0 |
16 | E.setACategorical(Cat::A); // True: +5.0 |
17 | EXPECT_EQ(Evaluate(E), 15.0); |
18 | |
19 | E.setANumber(200); // True |
20 | E.setAFloat(-2.5); // False: -20.0 |
21 | E.setACategorical(Cat::B); // True: +5.0 |
22 | EXPECT_EQ(Evaluate(E), -15.0); |
23 | |
24 | E.setANumber(100); // False |
25 | E.setACategorical(Cat::C); // True: +3.0, False: -6.0 |
26 | EXPECT_EQ(Evaluate(E), -3.0); |
27 | } |
28 | } // namespace clangd |
29 | } // namespace clang |
30 | |