github.com/keybase/client/go@v0.0.0-20241007131713-f10651d043c8/kbfs/data/util_test.go (about) 1 // Copyright 2016 Keybase Inc. All rights reserved. 2 // Use of this source code is governed by a BSD 3 // license that can be found in the LICENSE file. 4 5 package data 6 7 import ( 8 "testing" 9 ) 10 11 func testSplitExtension(t *testing.T, s, base, ext string) { 12 // t.Logf("splitExtension(%q)", s) 13 a, b := SplitFileExtension(s) 14 if a != base || b != ext { 15 t.Errorf("splitExtension(%q) => %q,%q, expected %q,%q", s, a, b, base, ext) 16 } 17 } 18 19 func TestSplitExtension(t *testing.T) { 20 testSplitExtension(t, "foo", "foo", "") 21 testSplitExtension(t, "foo.txt", "foo", ".txt") 22 testSplitExtension(t, "foo.tar.gz", "foo", ".tar.gz") 23 testSplitExtension(t, "f.txt", "f", ".txt") 24 testSplitExtension(t, ".txt", ".txt", "") 25 testSplitExtension(t, ".tar.gz", ".tar.gz", "") 26 testSplitExtension(t, "x/y.txt", "x/y", ".txt") 27 testSplitExtension(t, "x/y", "x/y", "") 28 testSplitExtension(t, "x/", "x/", "") 29 testSplitExtension(t, "/.foo", "/.foo", "") 30 testSplitExtension(t, "weird. is this?", "weird. is this?", "") 31 testSplitExtension(t, "", "", "") 32 }