github.com/hhrutter/nomad@v0.6.0-rc2.0.20170723054333-80c4b03f0705/command/agent/syslog_test.go (about)

     1  package agent
     2  
     3  import (
     4  	"os"
     5  	"runtime"
     6  	"testing"
     7  
     8  	"github.com/hashicorp/go-syslog"
     9  	"github.com/hashicorp/logutils"
    10  )
    11  
    12  func TestSyslogFilter(t *testing.T) {
    13  	t.Parallel()
    14  	if runtime.GOOS == "windows" {
    15  		t.Skip("Syslog not supported on Windows")
    16  	}
    17  	if os.Getenv("TRAVIS") == "true" {
    18  		t.Skip("Syslog not supported on travis-ci")
    19  	}
    20  
    21  	l, err := gsyslog.NewLogger(gsyslog.LOG_NOTICE, "LOCAL0", "consul")
    22  	if err != nil {
    23  		t.Fatalf("err: %s", err)
    24  	}
    25  
    26  	filt := LevelFilter()
    27  	filt.MinLevel = logutils.LogLevel("INFO")
    28  
    29  	s := &SyslogWrapper{l, filt}
    30  	n, err := s.Write([]byte("[INFO] test"))
    31  	if err != nil {
    32  		t.Fatalf("err: %s", err)
    33  	}
    34  	if n == 0 {
    35  		t.Fatalf("should have logged")
    36  	}
    37  
    38  	n, err = s.Write([]byte("[DEBUG] test"))
    39  	if err != nil {
    40  		t.Fatalf("err: %s", err)
    41  	}
    42  	if n != 0 {
    43  		t.Fatalf("should not have logged")
    44  	}
    45  }