mirror of
https://github.com/rclone/rclone.git
synced 2024-11-23 13:09:58 +08:00
2fcb8f5db7
* Still to do * Copy * Move * MoveDir
31 lines
1.0 KiB
Go
31 lines
1.0 KiB
Go
package onedrive
|
||
|
||
import "testing"
|
||
|
||
func TestReplace(t *testing.T) {
|
||
for _, test := range []struct {
|
||
in string
|
||
out string
|
||
}{
|
||
{"", ""},
|
||
{"abc 123", "abc 123"},
|
||
{`\*<>?:|#%".~`, `\*<>?:|#%".~`},
|
||
{`\*<>?:|#%".~/\*<>?:|#%".~`, `\*<>?:|#%".~/\*<>?:|#%".~`},
|
||
{" leading space", "␠leading space"},
|
||
{"~leading tilde", "~leading tilde"},
|
||
{"trailing dot.", "trailing dot."},
|
||
{" leading space/ leading space/ leading space", "␠leading space/␠leading space/␠leading space"},
|
||
{"~leading tilde/~leading tilde/~leading tilde", "~leading tilde/~leading tilde/~leading tilde"},
|
||
{"trailing dot./trailing dot./trailing dot.", "trailing dot./trailing dot./trailing dot."},
|
||
} {
|
||
got := replaceReservedChars(test.in)
|
||
if got != test.out {
|
||
t.Errorf("replaceReservedChars(%q) want %q got %q", test.in, test.out, got)
|
||
}
|
||
got2 := restoreReservedChars(got)
|
||
if got2 != test.in {
|
||
t.Errorf("restoreReservedChars(%q) want %q got %q", got, test.in, got2)
|
||
}
|
||
}
|
||
}
|