| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- module Tests;
- import Core.Array;
- import Core.Test;
- import Core.Types;
- template struct Core::Array<size_t, 3>;
- using TestArray = Core::Array<size_t, 3>;
- static void testToString1() {
- TestArray a;
- a[0] = 1;
- a[1] = 243;
- a[2] = 423;
- Core::testString("[1, 243, 423]", a);
- Core::Array<int, 3> b = {{1, 2, 3}};
- Core::testString("[1, 2, 3]", b);
- }
- static void testToString2() {
- Core::Array<int, 1> a;
- a[0] = 1;
- Core::testString("[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(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(i + 1, a[i]);
- }
- }
- void testArray() {
- testToString1();
- testToString2();
- testReadConst();
- testRangeFor();
- }
|