44#include <gtest/gtest.h>
66 int id()
const {
return id_; }
75 explicit MockIterator(
const MockContainer* c =
nullptr) : container_(c) {}
80 return container_ == &c;
86 return container_ ==
other.container_;
101 MockIterator
iter(&container);
118 MockIterator
iter(
nullptr);
132 FAIL() <<
"Expected exception was not thrown";
134 catch (
const std::domain_error& e)
136 std::string msg = e.what();
137 EXPECT_TRUE(msg.find(
"Iterator") != std::string::npos ||
138 msg.find(
"iterator") != std::string::npos);
149 MockIterator
iter1(&container);
150 MockIterator
iter2(&container);
168 MockIterator
iter(&container);
176 MockIterator
iter1(
nullptr);
177 MockIterator
iter2(
nullptr);
186 MockIterator
iter1(&container);
187 MockIterator
iter2(
nullptr);
199 MockIterator
iter1(&container);
200 MockIterator
iter2(&container);
305 ::testing::InitGoogleTest(&
argc,
argv);
Iterator and container validation utilities.
Main namespace for Aleph-w library functions.
Divide_Conquer_DP_Result< Cost > divide_and_conquer_partition_dp(const size_t groups, const size_t n, Transition_Cost_Fn transition_cost, const Cost inf=dp_optimization_detail::default_inf< Cost >())
Optimize partition DP using divide-and-conquer optimization.
void verify_container_and_iterators(const Container &container, const Iterator &itor_container, const Iterator &itor1, const Iterator &itor2)
Verifies container-iterator relationships with distinctness check.
void verify_iterators(const Iterator &itor1, const Iterator &itor2)
Verifies that two iterators belong to the same container.
void verify_container_and_iterator(const Container &container, const Iterator &itor)
Verifies that an iterator belongs to a specific container.