test(slice): add operator indexing test for Array and Slice
This commit is contained in:
@@ -0,0 +1,36 @@
|
|||||||
|
import Std::Io;
|
||||||
|
import Std::Array;
|
||||||
|
import Std::Slice;
|
||||||
|
|
||||||
|
func Main() -> int {
|
||||||
|
// Test Array operator_index_get/set
|
||||||
|
let arr: Array<int> = Array_New<int>(10);
|
||||||
|
Array_Push<int>(&arr, 10);
|
||||||
|
Array_Push<int>(&arr, 20);
|
||||||
|
Array_Push<int>(&arr, 30);
|
||||||
|
|
||||||
|
// Use [] syntax (operator_index_get)
|
||||||
|
if arr[0] != 10 { return 1; }
|
||||||
|
if arr[1] != 20 { return 2; }
|
||||||
|
if arr[2] != 30 { return 3; }
|
||||||
|
|
||||||
|
// Use [] syntax (operator_index_set)
|
||||||
|
arr[1] = 99;
|
||||||
|
if arr[1] != 99 { return 4; }
|
||||||
|
|
||||||
|
// Test Slice operator_index_get/set
|
||||||
|
let s: Slice<int> = Slice_FromArray<int>(&arr);
|
||||||
|
|
||||||
|
if s[0] != 10 { return 5; }
|
||||||
|
if s[1] != 99 { return 6; }
|
||||||
|
if s[2] != 30 { return 7; }
|
||||||
|
|
||||||
|
s[2] = 42;
|
||||||
|
if s[2] != 42 { return 8; }
|
||||||
|
|
||||||
|
PrintInt(s[0]);
|
||||||
|
PrintLine("");
|
||||||
|
PrintInt(Slice_Len<int>(&s));
|
||||||
|
PrintLine("");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user