Files
nats-server/test/pid_test.go
Ivan Kozlovic 27bfed541c Fixed errors found by staticcheck
Staticcheck has probably been updated and is finding new errors.
They have been fixed.

Also, moved the run of staticcheck before running the test suite,
so if it fails, it fails sooner ;-).
2017-01-24 19:34:17 -07:00

45 lines
843 B
Go

// Copyright 2012-2013 Apcera Inc. All rights reserved.
package test
import (
"fmt"
"io/ioutil"
"os"
"testing"
)
func TestPidFile(t *testing.T) {
opts := DefaultTestOptions
tmpDir, err := ioutil.TempDir("", "_gnatsd")
if err != nil {
t.Fatal("Could not create tmp dir")
}
defer os.RemoveAll(tmpDir)
file, err := ioutil.TempFile(tmpDir, "gnatsd:pid_")
if err != nil {
t.Fatalf("Unable to create temp file: %v", err)
}
file.Close()
opts.PidFile = file.Name()
s := RunServer(&opts)
s.Shutdown()
buf, err := ioutil.ReadFile(opts.PidFile)
if err != nil {
t.Fatalf("Could not read pid_file: %v", err)
}
if len(buf) <= 0 {
t.Fatal("Expected a non-zero length pid_file")
}
pid := 0
fmt.Sscanf(string(buf), "%d", &pid)
if pid != os.Getpid() {
t.Fatalf("Expected pid to be %d, got %d\n", os.Getpid(), pid)
}
}