github.com/go-spring/spring-base@v1.1.3/util/filepath_test.go (about) 1 /* 2 * Copyright 2012-2019 the original author or authors. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * https://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package util_test 18 19 import ( 20 "sort" 21 "testing" 22 23 "github.com/go-spring/spring-base/assert" 24 "github.com/go-spring/spring-base/code" 25 "github.com/go-spring/spring-base/util" 26 ) 27 28 func TestReadDirNames(t *testing.T) { 29 names, err := util.ReadDirNames("testdata") 30 assert.Nil(t, err) 31 sort.Strings(names) 32 assert.Equal(t, names, []string{"pkg", "pkg.go"}) 33 _, err = util.ReadDirNames("not_exists") 34 assert.Error(t, err, "open not_exists: no such file or directory") 35 } 36 37 func TestContract(t *testing.T) { 38 file := code.File() 39 assert.Equal(t, util.Contract(file, -1), file) 40 assert.Equal(t, util.Contract(file, 0), file) 41 assert.Equal(t, util.Contract(file, 1), file) 42 assert.Equal(t, util.Contract(file, 3), file) 43 assert.Equal(t, util.Contract(file, 4), "...o") 44 assert.Equal(t, util.Contract(file, 5), "...go") 45 assert.Equal(t, util.Contract(file, 10000), file) 46 }