Fix versioner regexp's (fixes #1023)

This commit is contained in:
Audrius Butkevicius 2014-11-25 22:32:18 +00:00
parent ea17542e4b
commit c1069052ae
2 changed files with 5 additions and 1 deletions

View File

@ -28,7 +28,7 @@ func taggedFilename(name, tag string) string {
return filepath.Join(dir, withoutExt+"~"+tag+ext)
}
var tagExp = regexp.MustCompile(`~([^~.]+)(?:\.[^.]+)?$`)
var tagExp = regexp.MustCompile(`.*~([^~.]+)(?:\.[^.]+)?$`)
// Returns the tag from a filename, whether at the end or middle.
func filenameTag(path string) string {

View File

@ -25,10 +25,14 @@ func TestTaggedFilename(t *testing.T) {
{filepath.Join("foo", "bar.baz"), "tag", filepath.Join("foo", "bar~tag.baz")},
{"bar.baz", "tag", "bar~tag.baz"},
{"bar", "tag", "bar~tag"},
{"~$ufheft2.docx", "20140612-200554", "~$ufheft2~20140612-200554.docx"},
{"alle~4.mgz", "20141106-094415", "alle~4~20141106-094415.mgz"},
// Parsing test only
{"", "tag-only", "foo/bar.baz~tag-only"},
{"", "tag-only", "bar.baz~tag-only"},
{"", "20140612-200554", "~$ufheft2.docx~20140612-200554"},
{"", "20141106-094415", "alle~4.mgz~20141106-094415"},
}
for _, tc := range cases {