aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnhgelus Morhtuuzh <william@herges.fr>2026-04-20 14:16:04 +0200
committerAnhgelus Morhtuuzh <william@herges.fr>2026-04-20 14:16:04 +0200
commit4372b49024e82e889eb2073c37fbcc1dada05723 (patch)
tree22e3e390610904ccbbddca99c73c1c586a2e63c1
parent87046ba0fc5b9c3be61d23bd8cc2bc6fa84577ba (diff)
feat(go): run tests
-rw-r--r--go/build.zig14
-rw-r--r--go/typdown_test.go13
2 files changed, 26 insertions, 1 deletions
diff --git a/go/build.zig b/go/build.zig
index 5e6b59d..a448636 100644
--- a/go/build.zig
+++ b/go/build.zig
@@ -24,8 +24,20 @@ pub fn build(b: *std.Build) !void {
if (optimize != .Debug) try flags.appendSlice(b.allocator, " -s");
const go_build = b.addSystemCommand(&[_][]const u8{
"go", "build",
- "-ldflags", try flags.toOwnedSlice(b.allocator),
+ "-ldflags", flags.items,
".",
});
b.getInstallStep().dependOn(&go_build.step);
+
+ const race = b.option(bool, "race", "Run tests with -race") orelse false;
+ const go_test = b.addSystemCommand(&[_][]const u8{
+ "go", "test",
+ "-ldflags", flags.items,
+ "-v",
+ });
+ if (race) go_test.addArg("-race");
+ go_test.addArg("./...");
+
+ const test_step = b.step("test", "Run tests");
+ test_step.dependOn(&go_test.step);
}
diff --git a/go/typdown_test.go b/go/typdown_test.go
new file mode 100644
index 0000000..c1d8985
--- /dev/null
+++ b/go/typdown_test.go
@@ -0,0 +1,13 @@
+package typdown
+
+import "testing"
+
+func TestParse(t *testing.T) {
+ res, err := Parse("hello world")
+ if err != nil {
+ t.Fatal(err)
+ }
+ if res != `<p>hello world</p>` {
+ t.Errorf("invalid result: %s", res)
+ }
+}