pkg.re/essentialkaos/ek.10@v12.41.0+incompatible/pid/pid_darwin_test.go (about)

     1  //go:build darwin
     2  // +build darwin
     3  
     4  package pid
     5  
     6  // ////////////////////////////////////////////////////////////////////////////////// //
     7  //                                                                                    //
     8  //                         Copyright (c) 2022 ESSENTIAL KAOS                          //
     9  //      Apache License, Version 2.0 <https://www.apache.org/licenses/LICENSE-2.0>     //
    10  //                                                                                    //
    11  // ////////////////////////////////////////////////////////////////////////////////// //
    12  
    13  import (
    14  	"io/ioutil"
    15  	"os"
    16  
    17  	. "pkg.re/essentialkaos/check.v1"
    18  )
    19  
    20  // ////////////////////////////////////////////////////////////////////////////////// //
    21  
    22  func (s *PidSuite) TestIsWorks(c *C) {
    23  	Dir = s.Dir
    24  
    25  	err := Create("test")
    26  
    27  	c.Assert(err, IsNil)
    28  
    29  	c.Assert(IsWorks("test"), Equals, true)
    30  
    31  	Remove("test")
    32  
    33  	c.Assert(IsWorks("test"), Equals, false)
    34  
    35  	// Write fake pid to pid file
    36  	ioutil.WriteFile(s.Dir+"/test.pid", []byte("999999\n"), 0644)
    37  
    38  	c.Assert(IsWorks("test"), Equals, false)
    39  }
    40  
    41  func (s *PidSuite) TestIsProcessWorks(c *C) {
    42  	c.Assert(IsProcessWorks(os.Getpid()), Equals, true)
    43  	c.Assert(IsProcessWorks(999999), Equals, false)
    44  }