...

Source file src/github.com/opencontainers/runc/libcontainer/cgroups/fs/freezer_test.go

Documentation: github.com/opencontainers/runc/libcontainer/cgroups/fs

     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  }
    47  

View as plain text