github.com/coreos/mantle@v0.13.0/harness/test_test.go (about) 1 // Copyright 2017 CoreOS, 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 harness 16 17 import ( 18 "reflect" 19 "testing" 20 ) 21 22 func TestTestsAdd(t *testing.T) { 23 var ts Tests 24 ts.Add("test1", nil) 25 ts.Add("test2", nil) 26 expect := Tests(map[string]Test{"test1": nil, "test2": nil}) 27 if !reflect.DeepEqual(ts, expect) { 28 t.Errorf("got %v wanted %v", ts, expect) 29 } 30 } 31 32 func TestTestsAddDup(t *testing.T) { 33 var ts Tests 34 ts.Add("test1", nil) 35 defer func() { 36 if recover() == nil { 37 t.Errorf("Add did not panic") 38 } 39 }() 40 ts.Add("test1", nil) 41 } 42 43 func TestTestsList(t *testing.T) { 44 ts := Tests(map[string]Test{"test01": nil, "test2": nil}) 45 list := ts.List() 46 expect := []string{"test01", "test2"} 47 if !reflect.DeepEqual(list, expect) { 48 t.Errorf("got %v wanted %v", list, expect) 49 } 50 }