github.com/opencontainers/runc@v1.2.0-rc.1.0.20240520010911-492dc558cdd6/libcontainer/cgroups/fs/freezer_test.go (about) 1 package fs 2 3 import ( 4 "testing" 5 6 "github.com/opencontainers/runc/libcontainer/cgroups/fscommon" 7 "github.com/opencontainers/runc/libcontainer/configs" 8 ) 9 10 func TestFreezerSetState(t *testing.T) { 11 path := tempDir(t, "freezer") 12 13 writeFileContents(t, path, map[string]string{ 14 "freezer.state": string(configs.Frozen), 15 }) 16 17 r := &configs.Resources{ 18 Freezer: configs.Thawed, 19 } 20 freezer := &FreezerGroup{} 21 if err := freezer.Set(path, r); err != nil { 22 t.Fatal(err) 23 } 24 25 value, err := fscommon.GetCgroupParamString(path, "freezer.state") 26 if err != nil { 27 t.Fatal(err) 28 } 29 if value != string(configs.Thawed) { 30 t.Fatal("Got the wrong value, set freezer.state failed.") 31 } 32 } 33 34 func TestFreezerSetInvalidState(t *testing.T) { 35 path := tempDir(t, "freezer") 36 37 const invalidArg configs.FreezerState = "Invalid" 38 39 r := &configs.Resources{ 40 Freezer: invalidArg, 41 } 42 freezer := &FreezerGroup{} 43 if err := freezer.Set(path, r); err == nil { 44 t.Fatal("Failed to return invalid argument error") 45 } 46 }