| package registry |
| |
| import ( |
| "testing" |
| ) |
| |
| func TestValidateMirror(t *testing.T) { |
| valid := []string{ |
| "http://mirror-1.com", |
| "https://mirror-1.com", |
| "http://localhost", |
| "https://localhost", |
| "http://localhost:5000", |
| "https://localhost:5000", |
| "http://127.0.0.1", |
| "https://127.0.0.1", |
| "http://127.0.0.1:5000", |
| "https://127.0.0.1:5000", |
| } |
| |
| invalid := []string{ |
| "!invalid!://%as%", |
| "ftp://mirror-1.com", |
| "http://mirror-1.com/", |
| "http://mirror-1.com/?q=foo", |
| "http://mirror-1.com/v1/", |
| "http://mirror-1.com/v1/?q=foo", |
| "http://mirror-1.com/v1/?q=foo#frag", |
| "http://mirror-1.com?q=foo", |
| "https://mirror-1.com#frag", |
| "https://mirror-1.com/", |
| "https://mirror-1.com/#frag", |
| "https://mirror-1.com/v1/", |
| "https://mirror-1.com/v1/#", |
| "https://mirror-1.com?q", |
| } |
| |
| for _, address := range valid { |
| if ret, err := ValidateMirror(address); err != nil || ret == "" { |
| t.Errorf("ValidateMirror(`"+address+"`) got %s %s", ret, err) |
| } |
| } |
| |
| for _, address := range invalid { |
| if ret, err := ValidateMirror(address); err == nil || ret != "" { |
| t.Errorf("ValidateMirror(`"+address+"`) got %s %s", ret, err) |
| } |
| } |
| } |