blob: bbdd3717dbe429660ae97c08e8d096cc3c331eba [file] [edit]
package fs
import (
"testing"
"github.com/opencontainers/runc/libcontainer/cgroups/fscommon"
"github.com/opencontainers/runc/libcontainer/configs"
)
func TestFreezerSetState(t *testing.T) {
path := tempDir(t, "freezer")
writeFileContents(t, path, map[string]string{
"freezer.state": string(configs.Frozen),
})
r := &configs.Resources{
Freezer: configs.Thawed,
}
freezer := &FreezerGroup{}
if err := freezer.Set(path, r); err != nil {
t.Fatal(err)
}
value, err := fscommon.GetCgroupParamString(path, "freezer.state")
if err != nil {
t.Fatal(err)
}
if value != string(configs.Thawed) {
t.Fatal("Got the wrong value, set freezer.state failed.")
}
}
func TestFreezerSetInvalidState(t *testing.T) {
path := tempDir(t, "freezer")
const invalidArg configs.FreezerState = "Invalid"
r := &configs.Resources{
Freezer: invalidArg,
}
freezer := &FreezerGroup{}
if err := freezer.Set(path, r); err == nil {
t.Fatal("Failed to return invalid argument error")
}
}