container/bits: move bind bits
All checks were successful
Test / Create distribution (push) Successful in 36s
Test / Sandbox (push) Successful in 2m15s
Test / Hakurei (push) Successful in 3m9s
Test / Hpkg (push) Successful in 4m14s
Test / Sandbox (race detector) (push) Successful in 4m29s
Test / Hakurei (race detector) (push) Successful in 5m21s
Test / Flake checks (push) Successful in 1m31s
All checks were successful
Test / Create distribution (push) Successful in 36s
Test / Sandbox (push) Successful in 2m15s
Test / Hakurei (push) Successful in 3m9s
Test / Hpkg (push) Successful in 4m14s
Test / Sandbox (race detector) (push) Successful in 4m29s
Test / Hakurei (race detector) (push) Successful in 5m21s
Test / Flake checks (push) Successful in 1m31s
This allows referring to the bits without importing container. Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
@@ -5,6 +5,7 @@ import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"hakurei.app/container/bits"
|
||||
"hakurei.app/container/check"
|
||||
"hakurei.app/container/stub"
|
||||
)
|
||||
@@ -20,14 +21,14 @@ func TestAutoRootOp(t *testing.T) {
|
||||
checkOpBehaviour(t, []opBehaviourTestCase{
|
||||
{"readdir", &Params{ParentPerm: 0750}, &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, []stub.Call{
|
||||
call("readdir", stub.ExpectArgs{"/"}, stubDir(), stub.UniqueError(2)),
|
||||
}, stub.UniqueError(2), nil, nil},
|
||||
|
||||
{"early", &Params{ParentPerm: 0750}, &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, []stub.Call{
|
||||
call("readdir", stub.ExpectArgs{"/"}, stubDir("bin", "dev", "etc", "home", "lib64",
|
||||
"lost+found", "mnt", "nix", "proc", "root", "run", "srv", "sys", "tmp", "usr", "var"), nil),
|
||||
@@ -36,7 +37,7 @@ func TestAutoRootOp(t *testing.T) {
|
||||
|
||||
{"apply", &Params{ParentPerm: 0750}, &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, []stub.Call{
|
||||
call("readdir", stub.ExpectArgs{"/"}, stubDir("bin", "dev", "etc", "home", "lib64",
|
||||
"lost+found", "mnt", "nix", "proc", "root", "run", "srv", "sys", "tmp", "usr", "var"), nil),
|
||||
@@ -57,7 +58,7 @@ func TestAutoRootOp(t *testing.T) {
|
||||
|
||||
{"success pd", &Params{ParentPerm: 0750}, &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, []stub.Call{
|
||||
call("readdir", stub.ExpectArgs{"/"}, stubDir("bin", "dev", "etc", "home", "lib64",
|
||||
"lost+found", "mnt", "nix", "proc", "root", "run", "srv", "sys", "tmp", "usr", "var"), nil),
|
||||
@@ -124,10 +125,10 @@ func TestAutoRootOp(t *testing.T) {
|
||||
})
|
||||
|
||||
checkOpsBuilder(t, []opsBuilderTestCase{
|
||||
{"pd", new(Ops).Root(check.MustAbs("/"), BindWritable), Ops{
|
||||
{"pd", new(Ops).Root(check.MustAbs("/"), bits.BindWritable), Ops{
|
||||
&AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
},
|
||||
}},
|
||||
})
|
||||
@@ -137,42 +138,42 @@ func TestAutoRootOp(t *testing.T) {
|
||||
|
||||
{"internal ne", &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
resolved: []*BindMountOp{new(BindMountOp)},
|
||||
}, true},
|
||||
|
||||
{"flags differs", &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable | BindDevice,
|
||||
Flags: bits.BindWritable | bits.BindDevice,
|
||||
}, &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, false},
|
||||
|
||||
{"host differs", &AutoRootOp{
|
||||
Host: check.MustAbs("/tmp/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, false},
|
||||
|
||||
{"equals", &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, true},
|
||||
})
|
||||
|
||||
checkOpMeta(t, []opMetaTestCase{
|
||||
{"root", &AutoRootOp{
|
||||
Host: check.MustAbs("/"),
|
||||
Flags: BindWritable,
|
||||
Flags: bits.BindWritable,
|
||||
}, "setting up", `auto root "/" flags 0x2`},
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user