| package url |
| |
| import ( |
| "testing" |
| |
| . "gopkg.in/check.v1" |
| ) |
| |
| func Test(t *testing.T) { TestingT(t) } |
| |
| type URLSuite struct{} |
| |
| var _ = Suite(&URLSuite{}) |
| |
| func (s *URLSuite) TestMatchesScpLike(c *C) { |
| examples := []string{ |
| "git@github.com:james/bond", |
| "git@github.com:007/bond", |
| "git@github.com:22:james/bond", |
| "git@github.com:22:007/bond", |
| } |
| |
| for _, url := range examples { |
| c.Check(MatchesScpLike(url), Equals, true) |
| } |
| } |
| |
| func (s *URLSuite) TestFindScpLikeComponents(c *C) { |
| url := "git@github.com:james/bond" |
| user, host, port, path := FindScpLikeComponents(url) |
| |
| c.Check(user, Equals, "git") |
| c.Check(host, Equals, "github.com") |
| c.Check(port, Equals, "") |
| c.Check(path, Equals, "james/bond") |
| |
| url = "git@github.com:007/bond" |
| user, host, port, path = FindScpLikeComponents(url) |
| |
| c.Check(user, Equals, "git") |
| c.Check(host, Equals, "github.com") |
| c.Check(port, Equals, "") |
| c.Check(path, Equals, "007/bond") |
| |
| url = "git@github.com:22:james/bond" |
| user, host, port, path = FindScpLikeComponents(url) |
| |
| c.Check(user, Equals, "git") |
| c.Check(host, Equals, "github.com") |
| c.Check(port, Equals, "22") |
| c.Check(path, Equals, "james/bond") |
| |
| url = "git@github.com:22:007/bond" |
| user, host, port, path = FindScpLikeComponents(url) |
| |
| c.Check(user, Equals, "git") |
| c.Check(host, Equals, "github.com") |
| c.Check(port, Equals, "22") |
| c.Check(path, Equals, "007/bond") |
| } |