gopkg.in/moby/moby.v1@v1.13.1/pkg/urlutil/urlutil_test.go (about)

     1  package urlutil
     2  
     3  import "testing"
     4  
     5  var (
     6  	gitUrls = []string{
     7  		"git://github.com/docker/docker",
     8  		"git@github.com:docker/docker.git",
     9  		"git@bitbucket.org:atlassianlabs/atlassian-docker.git",
    10  		"https://github.com/docker/docker.git",
    11  		"http://github.com/docker/docker.git",
    12  		"http://github.com/docker/docker.git#branch",
    13  		"http://github.com/docker/docker.git#:dir",
    14  	}
    15  	incompleteGitUrls = []string{
    16  		"github.com/docker/docker",
    17  	}
    18  	invalidGitUrls = []string{
    19  		"http://github.com/docker/docker.git:#branch",
    20  	}
    21  	transportUrls = []string{
    22  		"tcp://example.com",
    23  		"tcp+tls://example.com",
    24  		"udp://example.com",
    25  		"unix:///example",
    26  		"unixgram:///example",
    27  	}
    28  )
    29  
    30  func TestValidGitTransport(t *testing.T) {
    31  	for _, url := range gitUrls {
    32  		if IsGitTransport(url) == false {
    33  			t.Fatalf("%q should be detected as valid Git prefix", url)
    34  		}
    35  	}
    36  
    37  	for _, url := range incompleteGitUrls {
    38  		if IsGitTransport(url) == true {
    39  			t.Fatalf("%q should not be detected as valid Git prefix", url)
    40  		}
    41  	}
    42  }
    43  
    44  func TestIsGIT(t *testing.T) {
    45  	for _, url := range gitUrls {
    46  		if IsGitURL(url) == false {
    47  			t.Fatalf("%q should be detected as valid Git url", url)
    48  		}
    49  	}
    50  
    51  	for _, url := range incompleteGitUrls {
    52  		if IsGitURL(url) == false {
    53  			t.Fatalf("%q should be detected as valid Git url", url)
    54  		}
    55  	}
    56  
    57  	for _, url := range invalidGitUrls {
    58  		if IsGitURL(url) == true {
    59  			t.Fatalf("%q should not be detected as valid Git prefix", url)
    60  		}
    61  	}
    62  }
    63  
    64  func TestIsTransport(t *testing.T) {
    65  	for _, url := range transportUrls {
    66  		if IsTransportURL(url) == false {
    67  			t.Fatalf("%q should be detected as valid Transport url", url)
    68  		}
    69  	}
    70  }