summaryrefslogtreecommitdiffhomepage
path: root/misc/tests
diff options
context:
space:
mode:
authorTyge Løvset <[email protected]>2023-01-27 19:19:06 +0100
committerTyge Løvset <[email protected]>2023-01-27 19:19:06 +0100
commitb7b090148811935a3f4b069ad2b9481bbbe5d46d (patch)
tree1a9b81365af19d8a60d90a19618fa29822f46699 /misc/tests
parentc0c6b17afa97dff6eb498cb177a9dfc88669aa35 (diff)
downloadSTC-modified-b7b090148811935a3f4b069ad2b9481bbbe5d46d.tar.gz
STC-modified-b7b090148811935a3f4b069ad2b9481bbbe5d46d.zip
Added cspan_slice() function.
Diffstat (limited to 'misc/tests')
-rw-r--r--misc/tests/cspan_test.c24
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);
+}