#include "AdjacencyMatrix.hpp" #include void test_color_dependency() { AdjacencyMatrix adj({"task1", "task2", "final"}); adj.set("task1", "task2"); adj.set("task2", "final"); auto deps = adj.get_dependencies("final"); ASSERT(deps == std::vector({"task2"})); deps = adj.get_dependencies("task2"); ASSERT(deps == std::vector({"task1"})); deps = adj.get_dependencies("task1"); ASSERT(deps == std::vector({})); } void test_color_dependency2() { AdjacencyMatrix adj({"task1", "task2", "final"}); adj.set("task1", "final"); adj.set("task2", "final"); auto deps = adj.get_dependencies("final"); ASSERT(std::set(deps.begin(), deps.end()) == std::set({"task1", "task2"})); deps = adj.get_dependencies("task2"); ASSERT(deps == std::vector({})); deps = adj.get_dependencies("task1"); ASSERT(deps == std::vector({})); } int main() { test_color_dependency(); test_color_dependency2(); return 0; }