github.com/google/martian/v3@v3.3.3/log/log_test.go (about) 1 // Copyright 2015 Google Inc. All rights reserved. 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 package log 16 17 import ( 18 "bytes" 19 "os" 20 "strings" 21 "testing" 22 23 stdlog "log" 24 ) 25 26 func TestLog(t *testing.T) { 27 buf := new(bytes.Buffer) 28 29 stdlog.SetOutput(buf) 30 defer stdlog.SetOutput(os.Stdout) 31 32 // Reset log level after tests. 33 defer func(l int) { level = l }(level) 34 level = Debug 35 36 Infof("log: %s test", "info") 37 if got, want := buf.String(), "INFO: log: info test\n"; !strings.HasSuffix(got, want) { 38 t.Errorf("Infof(): got %q, want to contain %q", got, want) 39 } 40 41 Debugf("log: %s test", "debug") 42 if got, want := buf.String(), "DEBUG: log: debug test\n"; !strings.HasSuffix(got, want) { 43 t.Errorf("Debugf(): got %q, want to contain %q", got, want) 44 } 45 46 Errorf("log: %s test", "error") 47 if got, want := buf.String(), "ERROR: log: error test\n"; !strings.HasSuffix(got, want) { 48 t.Errorf("Errorf(): got %q, want to contain %q", got, want) 49 } 50 }