Fix smell and add new test

This commit is contained in:
2023-03-13 17:17:31 +01:00
parent d9a6f528f6
commit 14860ea0b9
2 changed files with 12 additions and 1 deletions

View File

@@ -25,7 +25,7 @@ namespace mdlp {
throw invalid_argument("wrong proposed num_cuts value");
}
if (proposed_cuts < 1)
return static_cast<size_t>(round(X.size() * proposed_cuts));
return static_cast<size_t>(round(static_cast<float>(X.size()) * proposed_cuts));
return static_cast<size_t>(proposed_cuts);
}

View File

@@ -263,4 +263,15 @@ namespace mdlp {
int depths[] = { 2, 2, 2, 2 };
test_dataset(test, "iris", expected, depths);
}
TEST_F(TestFImdlp, ProposedCuts)
{
vector<pair<float, size_t>> proposed_list = { { 0.1, 2}, { 0.5, 10}, {0.07, 1}, {1, 1}, {2, 2} };
size_t expected, computed;
for (auto proposed_item : proposed_list) {
tie(proposed_cuts, expected) = proposed_item;
computed = compute_max_num_cut_points();
ASSERT_EQ(expected, computed);
}
}
}