aboutsummaryrefslogtreecommitdiff
path: root/testsuite
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite')
-rw-r--r--testsuite/runnable/record_extension.elna2
-rw-r--r--testsuite/runnable/return_aggregate.elna4
-rw-r--r--testsuite/runnable/slice_array.elna11
-rw-r--r--testsuite/runnable/slice_pointer.elna11
-rw-r--r--testsuite/runnable/slice_slice.elna13
5 files changed, 38 insertions, 3 deletions
diff --git a/testsuite/runnable/record_extension.elna b/testsuite/runnable/record_extension.elna
index 1aae5b3..47ac908 100644
--- a/testsuite/runnable/record_extension.elna
+++ b/testsuite/runnable/record_extension.elna
@@ -3,7 +3,7 @@ type
kind: Word
end
ElnaLexerStringToken = record(ElnaLexerToken)
- value: String
+ value: []const Char
end
var
diff --git a/testsuite/runnable/return_aggregate.elna b/testsuite/runnable/return_aggregate.elna
index e162498..90c1677 100644
--- a/testsuite/runnable/return_aggregate.elna
+++ b/testsuite/runnable/return_aggregate.elna
@@ -5,8 +5,8 @@ type
end
proc f(): R
-return R{a: 1, b: 2}
+return R{ a: 1, b: 2 }
begin
- assert(f() = R{a: 1, b: 2})
+ assert(f() = R{ a: 1, b: 2 })
end.
diff --git a/testsuite/runnable/slice_array.elna b/testsuite/runnable/slice_array.elna
new file mode 100644
index 0000000..af0a270
--- /dev/null
+++ b/testsuite/runnable/slice_array.elna
@@ -0,0 +1,11 @@
+var
+ array: [3]Int := [3]Int{ 2, 4, 6 }
+ slice: []Int
+
+begin
+ slice := array[1 to 3];
+
+ assert(slice.length = 3u);
+ assert(slice[1] = 2);
+ assert(slice[3] = 6)
+end.
diff --git a/testsuite/runnable/slice_pointer.elna b/testsuite/runnable/slice_pointer.elna
new file mode 100644
index 0000000..d053f51
--- /dev/null
+++ b/testsuite/runnable/slice_pointer.elna
@@ -0,0 +1,11 @@
+var
+ array: [3]Int := [3]Int{ 2, 4, 6 }
+ slice: []Int
+
+begin
+ slice := array.ptr[1 to 3];
+
+ assert(slice.length = 3u);
+ assert(slice[1] = 2);
+ assert(slice[3] = 6)
+end.
diff --git a/testsuite/runnable/slice_slice.elna b/testsuite/runnable/slice_slice.elna
new file mode 100644
index 0000000..d6f309f
--- /dev/null
+++ b/testsuite/runnable/slice_slice.elna
@@ -0,0 +1,13 @@
+var
+ array: [5]Int := [5]Int{ 2, 4, 6, 8, 10 }
+ slice1, slice2: []Int
+
+begin
+ slice1 := array.ptr[1 to array.length];
+ slice2 := slice1[2 to 4];
+
+ assert(slice2.length = 3u);
+ assert(slice2[1] = 4);
+ assert(slice2[2] = 6);
+ assert(slice2[3] = 8)
+end.