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:
@@ -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
|
||||
'';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user