aboutsummaryrefslogtreecommitdiffhomepage
path: root/container/initsymlink_test.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2025-08-31 23:11:25 +0900
committerOphestra <cat@gensokyo.uk>2025-08-31 23:11:25 +0900
commit49600a6f46d99ff35d883381670548de1f01846e (patch)
tree9c4a8067f2155eca36a29c6bb99f82ecb81c2495 /container/initsymlink_test.go
parentb489a3bba15bc6d808d7cc9c17f74dd833d32b9e (diff)
container/stub: export stub helpers
These are very useful in many packages containing relatively large amount of code making calls to difficult or impossible to stub functions. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'container/initsymlink_test.go')
-rw-r--r--container/initsymlink_test.go30
1 files changed, 16 insertions, 14 deletions
diff --git a/container/initsymlink_test.go b/container/initsymlink_test.go
index db1c1a5e..8e94ead5 100644
--- a/container/initsymlink_test.go
+++ b/container/initsymlink_test.go
@@ -3,6 +3,8 @@ package container
import (
"os"
"testing"
+
+ "hakurei.app/container/stub"
)
func TestSymlinkOp(t *testing.T) {
@@ -10,9 +12,9 @@ func TestSymlinkOp(t *testing.T) {
{"mkdir", &Params{ParentPerm: 0700}, &SymlinkOp{
Target: MustAbs("/etc/nixos"),
LinkName: "/etc/static/nixos",
- }, nil, nil, []kexpect{
- {"mkdirAll", expectArgs{"/sysroot/etc", os.FileMode(0700)}, nil, errUnique},
- }, errUnique},
+ }, nil, nil, []stub.Call{
+ {"mkdirAll", stub.ExpectArgs{"/sysroot/etc", os.FileMode(0700)}, nil, stub.UniqueError(1)},
+ }, stub.UniqueError(1)},
{"abs", &Params{ParentPerm: 0755}, &SymlinkOp{
Target: MustAbs("/etc/mtab"),
@@ -24,27 +26,27 @@ func TestSymlinkOp(t *testing.T) {
Target: MustAbs("/etc/mtab"),
LinkName: "/etc/mtab",
Dereference: true,
- }, []kexpect{
- {"readlink", expectArgs{"/etc/mtab"}, "/proc/mounts", errUnique},
- }, errUnique, nil, nil},
+ }, []stub.Call{
+ {"readlink", stub.ExpectArgs{"/etc/mtab"}, "/proc/mounts", stub.UniqueError(0)},
+ }, stub.UniqueError(0), nil, nil},
{"success noderef", &Params{ParentPerm: 0700}, &SymlinkOp{
Target: MustAbs("/etc/nixos"),
LinkName: "/etc/static/nixos",
- }, nil, nil, []kexpect{
- {"mkdirAll", expectArgs{"/sysroot/etc", os.FileMode(0700)}, nil, nil},
- {"symlink", expectArgs{"/etc/static/nixos", "/sysroot/etc/nixos"}, nil, nil},
+ }, nil, nil, []stub.Call{
+ {"mkdirAll", stub.ExpectArgs{"/sysroot/etc", os.FileMode(0700)}, nil, nil},
+ {"symlink", stub.ExpectArgs{"/etc/static/nixos", "/sysroot/etc/nixos"}, nil, nil},
}, nil},
{"success", &Params{ParentPerm: 0755}, &SymlinkOp{
Target: MustAbs("/etc/mtab"),
LinkName: "/etc/mtab",
Dereference: true,
- }, []kexpect{
- {"readlink", expectArgs{"/etc/mtab"}, "/proc/mounts", nil},
- }, nil, []kexpect{
- {"mkdirAll", expectArgs{"/sysroot/etc", os.FileMode(0755)}, nil, nil},
- {"symlink", expectArgs{"/proc/mounts", "/sysroot/etc/mtab"}, nil, nil},
+ }, []stub.Call{
+ {"readlink", stub.ExpectArgs{"/etc/mtab"}, "/proc/mounts", nil},
+ }, nil, []stub.Call{
+ {"mkdirAll", stub.ExpectArgs{"/sysroot/etc", os.FileMode(0755)}, nil, nil},
+ {"symlink", stub.ExpectArgs{"/proc/mounts", "/sysroot/etc/mtab"}, nil, nil},
}, nil},
})