authorgravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2020-06-02 13:26:49+02:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-06-09 00:22:34-04:00
log73a3bfd1dd63a160fd3776b8394d9336abd1ae99
tree1959a5ba73fe3bb4570ae0a78e9f1566e20dfd84
parent146be2a8cb3272673a99050351b5f394fd1de30b

Add basic tests for the new builtins


3 files changed, 29 insertions(+), 0 deletions(-)

test/compile_errors.zig+18
...@@ -7504,4 +7504,22 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -7504,4 +7504,22 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
7504 , &[_][]const u8{7504 , &[_][]const u8{
7505 ":3:52: error: slice '[]const u8' cannot have its bytes reinterpreted",7505 ":3:52: error: slice '[]const u8' cannot have its bytes reinterpreted",
7506 });7506 });
7507
7508 cases.add("wasmMemorySize is a compile error in non-Wasm targets",
7509 \\export fn foo() void {
7510 \\ _ = @wasmMemorySize();
7511 \\ return;
7512 \\}
7513 , &[_][]const u8{
7514 "tmp.zig:2:9: error: @wasmMemorySize is a wasm32 feature only",
7515 });
7516
7517 cases.add("wasmMemoryGrow is a compile error in non-Wasm targets",
7518 \\export fn foo() void {
7519 \\ _ = @wasmMemoryGrow(1);
7520 \\ return;
7521 \\}
7522 , &[_][]const u8{
7523 "tmp.zig:2:9: error: @wasmMemoryGrow is a wasm32 feature only",
7524 });
7507}7525}
test/stage1/behavior.zig+3
...@@ -126,6 +126,9 @@ comptime {...@@ -126,6 +126,9 @@ comptime {
126 _ = @import("behavior/var_args.zig");126 _ = @import("behavior/var_args.zig");
127 _ = @import("behavior/vector.zig");127 _ = @import("behavior/vector.zig");
128 _ = @import("behavior/void.zig");128 _ = @import("behavior/void.zig");
129 if (builtin.arch == .wasm32) {
130 _ = @import("behavior/wasm.zig");
131 }
129 _ = @import("behavior/while.zig");132 _ = @import("behavior/while.zig");
130 _ = @import("behavior/widening.zig");133 _ = @import("behavior/widening.zig");
131}134}
test/stage1/behavior/wasm.zig created+8
...@@ -0,0 +1,8 @@
1const std = @import("std");
2const expect = std.testing.expect;
3
4test "memory size and grow" {
5 var prev = @wasmMemorySize();
6 expect(prev == @wasmMemoryGrow(1));
7 expect(prev + 1 == @wasmMemorySize());
8}