golang.org/x/sys@v0.9.0/windows/svc/eventlog/log_test.go (about) 1 // Copyright 2012 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 //go:build windows 6 // +build windows 7 8 package eventlog_test 9 10 import ( 11 "testing" 12 13 "golang.org/x/sys/windows/svc/eventlog" 14 ) 15 16 func TestLog(t *testing.T) { 17 if testing.Short() { 18 t.Skip("skipping test in short mode - it modifies system logs") 19 } 20 21 const name = "mylog" 22 const supports = eventlog.Error | eventlog.Warning | eventlog.Info 23 err := eventlog.InstallAsEventCreate(name, supports) 24 if err != nil { 25 t.Fatalf("Install failed: %s", err) 26 } 27 defer func() { 28 err = eventlog.Remove(name) 29 if err != nil { 30 t.Fatalf("Remove failed: %s", err) 31 } 32 }() 33 34 l, err := eventlog.Open(name) 35 if err != nil { 36 t.Fatalf("Open failed: %s", err) 37 } 38 defer l.Close() 39 40 err = l.Info(1, "info") 41 if err != nil { 42 t.Fatalf("Info failed: %s", err) 43 } 44 err = l.Warning(2, "warning") 45 if err != nil { 46 t.Fatalf("Warning failed: %s", err) 47 } 48 err = l.Error(3, "error") 49 if err != nil { 50 t.Fatalf("Error failed: %s", err) 51 } 52 }