#include #include #include using namespace std; // plats för cycle #define CATCH_CONFIG_MAIN #include "catch.hpp" TEST_CASE("int vector") { vector v {1, 2, 3, 4}; Cycle> c {v}; for (int i{0}; i < v.size(); ++i) { CHECK (c.at(i) == v.at(i)); CHECK (c.at(i + v.size()) == v.at(i)); CHECK (c.at(i + 2 * v.size()) == v.at(i)); } c.at(0) = 5; CHECK(v.at(0) == 5); CHECK_THROWS(v.at(-1)); } TEST_CASE("string deque") { deque d {"programmering", "kul", "C++"}; Cycle> const c {d}; for (int i{0}; i < d.size(); ++i) { CHECK (c.at(i) == d.at(i)); CHECK (c.at(i + d.size()) == d.at(i)); CHECK (c.at(i + 2 * d.size()) == d.at(i)); } }