commit 14acc65675a35f838b5e73aeaca595ced0c10a0c (tree)
parent a5379aa3ee376197820f1526c88921607a787a11
Author: Vexu <git@vexu.eu>
Date: Thu, 18 Jun 2020 21:03:08 +0300
add tests for `@src`
Diffstat:
3 files changed, 24 insertions(+), 0 deletions(-)
diff --git a/test/compile_errors.zig b/test/compile_errors.zig
@@ -2,6 +2,14 @@ const tests = @import("tests.zig");
const std = @import("std");
pub fn addCases(cases: *tests.CompileErrorContext) void {
+ cases.add("@src outside function",
+ \\comptime {
+ \\ @src();
+ \\}
+ , &[_][]const u8{
+ "tmp.zig:2:5: error: @src outside function",
+ });
+
cases.add("call assigned to constant",
\\const Foo = struct {
\\ x: i32,
diff --git a/test/stage1/behavior.zig b/test/stage1/behavior.zig
@@ -131,4 +131,5 @@ comptime {
}
_ = @import("behavior/while.zig");
_ = @import("behavior/widening.zig");
+ _ = @import("behavior/src.zig");
}
diff --git a/test/stage1/behavior/src.zig b/test/stage1/behavior/src.zig
@@ -0,0 +1,15 @@
+const std = @import("std");
+const expect = std.testing.expect;
+
+test "@src" {
+ doTheTest();
+}
+
+fn doTheTest() void {
+ const src = @src();
+
+ expect(src.line == 9);
+ expect(src.column == 17);
+ expect(std.mem.endsWith(u8, src.fn_name, "doTheTest"));
+ expect(std.mem.endsWith(u8, src.file, "src.zig"));
+}