All checks were successful
Test / Create distribution (push) Successful in 35s
Test / Sandbox (push) Successful in 2m23s
Test / Hakurei (push) Successful in 3m14s
Test / Hpkg (push) Successful in 4m7s
Test / Sandbox (race detector) (push) Successful in 4m31s
Test / Hakurei (race detector) (push) Successful in 5m3s
Test / Flake checks (push) Successful in 1m27s
This can now be done cleanly via path function wrappers. Signed-off-by: Ophestra <cat@gensokyo.uk>
41 lines
1.2 KiB
Go
41 lines
1.2 KiB
Go
package container
|
|
|
|
import "testing"
|
|
|
|
func TestAutoEtcOp(t *testing.T) {
|
|
checkOpsBuilder(t, []opsBuilderTestCase{
|
|
{"pd", new(Ops).Etc(MustAbs("/etc/"), "048090b6ed8f9ebb10e275ff5d8c0659"), Ops{
|
|
&MkdirOp{Path: MustAbs("/etc/"), Perm: 0755},
|
|
&BindMountOp{
|
|
Source: MustAbs("/etc/"),
|
|
Target: MustAbs("/etc/.host/048090b6ed8f9ebb10e275ff5d8c0659"),
|
|
},
|
|
&AutoEtcOp{Prefix: "048090b6ed8f9ebb10e275ff5d8c0659"},
|
|
}},
|
|
})
|
|
|
|
checkOpIs(t, []opIsTestCase{
|
|
{"zero", new(AutoEtcOp), new(AutoEtcOp), true},
|
|
{"differs", &AutoEtcOp{Prefix: "\x00"}, &AutoEtcOp{":3"}, false},
|
|
{"equals", &AutoEtcOp{Prefix: ":3"}, &AutoEtcOp{":3"}, true},
|
|
})
|
|
|
|
checkOpMeta(t, []opMetaTestCase{
|
|
{"etc", &AutoEtcOp{
|
|
Prefix: ":3",
|
|
}, "setting up", "auto etc :3"},
|
|
})
|
|
|
|
t.Run("host path rel", func(t *testing.T) {
|
|
op := &AutoEtcOp{Prefix: "048090b6ed8f9ebb10e275ff5d8c0659"}
|
|
wantHostPath := "/etc/.host/048090b6ed8f9ebb10e275ff5d8c0659"
|
|
wantHostRel := ".host/048090b6ed8f9ebb10e275ff5d8c0659"
|
|
if got := op.hostPath(); got.String() != wantHostPath {
|
|
t.Errorf("hostPath: %q, want %q", got, wantHostPath)
|
|
}
|
|
if got := op.hostRel(); got != wantHostRel {
|
|
t.Errorf("hostRel: %q, want %q", got, wantHostRel)
|
|
}
|
|
})
|
|
}
|