blob: fdcdcd5b43f2d8c3324e1b1a3324442d588a6a29 [file] [log] [blame]
package main
import (
"testing"
)
func TestSubstPattern(t *testing.T) {
for _, tc := range []struct {
pat string
repl string
in string
want string
} {
{
pat: "%.c",
repl: "%.o",
in: "x.c",
want: "x.o",
},
{
pat: "c.%",
repl: "o.%",
in: "c.x",
want: "o.x",
},
{
pat: "%.c",
repl: "%.o",
in: "x.c.c",
want: "x.c.o",
},
{
pat: "%.c",
repl: "%.o",
in: "x.x y.c",
want: "x.x y.o",
},
{
pat: "%.%.c",
repl: "OK",
in: "x.%.c",
want: "OK",
},
{
pat: "x.c",
repl: "XX",
in: "x.c",
want: "XX",
},
{
pat: "x.c",
repl: "XX",
in: "x.c.c",
want: "x.c.c",
},
{
pat: "x.c",
repl: "XX",
in: "x.x.c",
want: "x.x.c",
},
} {
got := substPattern(tc.pat, tc.repl, tc.in)
if got != tc.want {
t.Errorf(`substPattern(%q,%q,%q)=%q, want %q`, tc.pat, tc.repl, tc.in, got, tc.want)
}
}
}