#include "../Tests.hpp" #include "core/data/Array.hpp" template class Core::Array; using TestArray = Core::Array; static void testToString1() { TestArray a; a[0] = 1; a[1] = 243; a[2] = 423; CORE_TEST_STRING("[1, 243, 423]", a); } static void testToString2() { Core::Array a; a[0] = 1; CORE_TEST_STRING("[1]", a); } static void testReadConst() { TestArray a; for(size_t i = 0; i < a.getLength(); i++) { a[i] = i; } const TestArray& c = a; for(size_t i = 0; i < c.getLength(); i++) { CORE_TEST_EQUAL(i, c[i]); } } static void testRangeFor() { TestArray a; for(size_t i = 0; i < a.getLength(); i++) { a[i] = i; } for(size_t& i : a) { i++; } for(size_t i = 0; i < a.getLength(); i++) { CORE_TEST_EQUAL(i + 1, a[i]); } } void Core::testArray() { testToString1(); testToString2(); testReadConst(); testRangeFor(); }