@@ -141,6 +141,9 @@ func TestKill(t *testing.T) {
141141 checkCgroupMode (t )
142142 manager , err := NewManager (defaultCgroup2Path , "/test1" , ToResources (& specs.LinuxResources {}))
143143 require .NoError (t , err )
144+ t .Cleanup (func () {
145+ _ = manager .Delete ()
146+ })
144147
145148 var (
146149 procs []* exec.Cmd
@@ -187,17 +190,35 @@ func TestKill(t *testing.T) {
187190
188191func TestMoveTo (t * testing.T ) {
189192 checkCgroupMode (t )
190- manager , err := NewManager (defaultCgroup2Path , "/test1" , ToResources (& specs.LinuxResources {}))
193+
194+ src , err := NewManager (defaultCgroup2Path , "/test-moveto-src" , ToResources (& specs.LinuxResources {}))
191195 require .NoError (t , err )
196+ t .Cleanup (func () {
197+ _ = src .Kill ()
198+ _ = src .Delete ()
199+ })
192200
193- proc := os .Getpid ()
194- err = manager .AddProc (uint64 (proc ))
201+ cmd := exec .Command ("sleep" , "infinity" )
202+ // Don't leak the process if we fail to join the cg,
203+ // send sigkill after tests over.
204+ cmd .SysProcAttr = & syscall.SysProcAttr {
205+ Pdeathsig : syscall .SIGKILL ,
206+ }
207+ err = cmd .Start ()
195208 require .NoError (t , err )
196209
197- destination , err := NewManager (defaultCgroup2Path , "/test2" , ToResources (& specs.LinuxResources {}))
210+ proc := cmd .Process .Pid
211+ err = src .AddProc (uint64 (proc ))
198212 require .NoError (t , err )
199213
200- err = manager .MoveTo (destination )
214+ destination , err := NewManager (defaultCgroup2Path , "/test-moveto-dest" , ToResources (& specs.LinuxResources {}))
215+ require .NoError (t , err )
216+ t .Cleanup (func () {
217+ _ = destination .Kill ()
218+ _ = destination .Delete ()
219+ })
220+
221+ err = src .MoveTo (destination )
201222 require .NoError (t , err )
202223
203224 desProcs , err := destination .Procs (true )
@@ -214,8 +235,11 @@ func TestMoveTo(t *testing.T) {
214235
215236func TestCgroupType (t * testing.T ) {
216237 checkCgroupMode (t )
217- manager , err := NewManager (defaultCgroup2Path , "/test1 " , ToResources (& specs.LinuxResources {}))
238+ manager , err := NewManager (defaultCgroup2Path , "/test-type " , ToResources (& specs.LinuxResources {}))
218239 require .NoError (t , err )
240+ t .Cleanup (func () {
241+ os .RemoveAll (manager .path )
242+ })
219243
220244 cgType , err := manager .GetType ()
221245 require .NoError (t , err )
0 commit comments