diff options
| author | Tyge Løvset <[email protected]> | 2023-01-27 19:19:06 +0100 |
|---|---|---|
| committer | Tyge Løvset <[email protected]> | 2023-01-27 19:19:06 +0100 |
| commit | b7b090148811935a3f4b069ad2b9481bbbe5d46d (patch) | |
| tree | 1a9b81365af19d8a60d90a19618fa29822f46699 /misc/tests/cspan_test.c | |
| parent | c0c6b17afa97dff6eb498cb177a9dfc88669aa35 (diff) | |
| download | STC-modified-b7b090148811935a3f4b069ad2b9481bbbe5d46d.tar.gz STC-modified-b7b090148811935a3f4b069ad2b9481bbbe5d46d.zip | |
Added cspan_slice() function.
Diffstat (limited to 'misc/tests/cspan_test.c')
| -rw-r--r-- | misc/tests/cspan_test.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/misc/tests/cspan_test.c b/misc/tests/cspan_test.c index 8d6d47c2..6b85af00 100644 --- a/misc/tests/cspan_test.c +++ b/misc/tests/cspan_test.c @@ -19,3 +19,27 @@ CTEST(cspan, subdim) { } } } + +CTEST(cspan, slice) { + int array[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; + intspan2 m1 = cspan_multidim(array, 3, 4); + + size_t sum1 = 0; + for (size_t i = 0; i < m1.dim[0]; ++i) { + for (size_t j = 0; j < m1.dim[1]; ++j) { + sum1 += *cspan_at(&m1, i, j); + } + } + + intspan2 m2 = m1; + cspan_slice(&m2, c_SLICE(0), c_SLICE(2,4)); + + size_t sum2 = 0; + for (size_t i = 0; i < m2.dim[0]; ++i) { + for (size_t j = 0; j < m2.dim[1]; ++j) { + sum2 += *cspan_at(&m2, i, j); + } + } + ASSERT_EQ(78, sum1); + ASSERT_EQ(45, sum2); +} |
