test/sandbox: pass want file as argument

This avoids building the check program multiple times.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2025-03-23 15:00:59 +09:00
parent 75e0c5d406
commit 2d379b5a38
3 changed files with 16 additions and 22 deletions

View File

@@ -3,22 +3,9 @@
buildGoModule,
version,
name,
want,
}:
let
wantFile = writeText "fortify-${name}-want.json" (builtins.toJSON want);
mainFile = writeText "main.go" ''
package main
import "os"
import "git.gensokyo.uk/security/fortify/test/sandbox"
func main() { (&sandbox.T{FS: os.DirFS("/"), PMountsPath: "/.fortify/mounts"}).MustCheckFile("${wantFile}") }
'';
in
buildGoModule {
pname = "fortify-${name}-check-sandbox";
pname = "check-sandbox";
inherit version;
src = ../.;
@@ -26,6 +13,13 @@ buildGoModule {
preBuild = ''
go mod init git.gensokyo.uk/security/fortify/test >& /dev/null
cp ${mainFile} main.go
cp ${writeText "main.go" ''
package main
import "os"
import "git.gensokyo.uk/security/fortify/test/sandbox"
func main() { (&sandbox.T{FS: os.DirFS("/"), PMountsPath: "/.fortify/mounts"}).MustCheckFile(os.Args[1]) }
''} main.go
'';
}