github.com/wuhuizuo/gomplate@v3.5.0+incompatible/funcs/filepath_test.go (about)

     1  //+build !windows
     2  
     3  package funcs
     4  
     5  import (
     6  	"testing"
     7  
     8  	"github.com/stretchr/testify/assert"
     9  )
    10  
    11  func TestFilePathFuncs(t *testing.T) {
    12  	f := FilePathNS()
    13  	assert.Equal(t, "bar", f.Base("foo/bar"))
    14  	assert.Equal(t, "bar", f.Base("/foo/bar"))
    15  
    16  	assert.Equal(t, "/foo/baz", f.Clean("/foo/bar/../baz"))
    17  	assert.Equal(t, "foo", f.Dir("foo/bar"))
    18  	assert.Equal(t, ".txt", f.Ext("/foo/bar/baz.txt"))
    19  	assert.False(t, f.IsAbs("foo/bar"))
    20  	assert.True(t, f.IsAbs("/foo/bar"))
    21  	assert.Equal(t, "foo/bar/qux", f.Join("foo", "bar", "baz", "..", "qux"))
    22  	m, _ := f.Match("*.txt", "foo.json")
    23  	assert.False(t, m)
    24  	m, _ = f.Match("*.txt", "foo.txt")
    25  	assert.True(t, m)
    26  	r, _ := f.Rel("/foo/bar", "/foo/bar/baz")
    27  	assert.Equal(t, "baz", r)
    28  	assert.Equal(t, []string{"/foo/bar/", "baz"}, f.Split("/foo/bar/baz"))
    29  	assert.Equal(t, "", f.VolumeName("/foo/bar"))
    30  }