github.com/bazelbuild/rules_webtesting@v0.2.0/go/errors/errors_test.go (about) 1 /// Copyright 2016 Google Inc. 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 errors 16 17 import ( 18 "errors" 19 "strings" 20 "testing" 21 ) 22 23 func TestNewFromString(t *testing.T) { 24 fromString := New("fromString", "error") 25 if Component(fromString) != "fromString" { 26 t.Errorf(`expected Component(fromString) == "fromString", got %s`, Component(fromString)) 27 } 28 if !strings.Contains(fromString.Error(), "error") { 29 t.Errorf(`expected fromString.Error() contains "error", got %s`, fromString.Error()) 30 } 31 32 err := errors.New("error") 33 fromError := New("fromError", err) 34 if Component(fromError) != "fromError" { 35 t.Errorf(`expected Component(fromError) == "fromError", got %s`, Component(fromError)) 36 } 37 if !strings.Contains(fromError.Error(), "error") { 38 t.Errorf(`got %v, expected fromError.Error() contains "error"`, fromError.Error()) 39 } 40 41 if sameComp := New("fromString", fromString); sameComp != fromString { 42 t.Errorf("expected sameComp == %+v, got %+v", fromString, sameComp) 43 } 44 45 if newComp := New("newComp", fromString); newComp != fromString { 46 t.Errorf("expected newComp == %+v, got %+v", fromString, newComp) 47 } 48 }