summaryrefslogtreecommitdiffstats
path: root/modules/git/submodule_test.go
diff options
context:
space:
mode:
authormrsdizzie <info@mrsdizzie.com>2019-06-03 11:11:20 -0400
committerLunny Xiao <xiaolunwen@gmail.com>2019-06-03 23:11:19 +0800
commit2ac2a5b0ba9f9a07867ed92792de7d54a8e10d23 (patch)
treea5990da4c1d6ab8096986998fc29f709a9bb585e /modules/git/submodule_test.go
parent45f588e85dbd3004334718dc9fbbb27675814ee0 (diff)
downloadgitea-2ac2a5b0ba9f9a07867ed92792de7d54a8e10d23.tar.gz
gitea-2ac2a5b0ba9f9a07867ed92792de7d54a8e10d23.zip
Refactor submodule URL parsing (#7100)
Use combination of url.Parse and regex to parse refURL rather than by hand with indexes & attempt to check if refURL is from same instance and adjust output to match. Also now return empty string instead of our original guess at URL if we are unable to parse it. Fixes #1526
Diffstat (limited to 'modules/git/submodule_test.go')
-rw-r--r--modules/git/submodule_test.go13
1 files changed, 12 insertions, 1 deletions
diff --git a/modules/git/submodule_test.go b/modules/git/submodule_test.go
index 6a3bb7ec7b..fd6c2aa955 100644
--- a/modules/git/submodule_test.go
+++ b/modules/git/submodule_test.go
@@ -19,8 +19,19 @@ func TestGetRefURL(t *testing.T) {
}{
{"git://github.com/user1/repo1", "/", "/", "http://github.com/user1/repo1"},
{"https://localhost/user1/repo1.git", "/", "/", "https://localhost/user1/repo1"},
- {"git@github.com/user1/repo1.git", "/", "/", "git@github.com/user1/repo1"},
+ {"http://localhost/user1/repo1.git", "/", "/", "http://localhost/user1/repo1"},
+ {"git@github.com:user1/repo1.git", "/", "/", "http://github.com/user1/repo1"},
{"ssh://git@git.zefie.net:2222/zefie/lge_g6_kernel_scripts.git", "/", "/", "http://git.zefie.net/zefie/lge_g6_kernel_scripts"},
+ {"git@git.zefie.net:2222/zefie/lge_g6_kernel_scripts.git", "/", "/", "http://git.zefie.net/2222/zefie/lge_g6_kernel_scripts"},
+ {"git@try.gitea.io:go-gitea/gitea", "https://try.gitea.io/go-gitea/gitea", "/", "https://try.gitea.io/go-gitea/gitea"},
+ {"ssh://git@try.gitea.io:9999/go-gitea/gitea", "https://try.gitea.io/go-gitea/gitea", "/", "https://try.gitea.io/go-gitea/gitea"},
+ {"git://git@try.gitea.io:9999/go-gitea/gitea", "https://try.gitea.io/go-gitea/log", "/", "https://try.gitea.io/go-gitea/gitea"},
+ {"ssh://git@127.0.0.1:9999/go-gitea/gitea", "https://127.0.0.1:3000/go-gitea/log", "/", "https://127.0.0.1:3000/go-gitea/gitea"},
+ {"https://gitea.com:3000/user1/repo1.git", "https://127.0.0.1:3000/go-gitea/gitea", "/", "https://gitea.com:3000/user1/repo1"},
+ {"https://username:password@github.com/username/repository.git", "/", "/", "https://username:password@github.com/username/repository"},
+ {"somethingbad", "https://127.0.0.1:3000/go-gitea/gitea", "/", ""},
+ {"git@localhost:user/repo", "https://localhost/user/repo2", "/", "https://localhost/user/repo"},
+ {"../path/to/repo.git/", "https://localhost/user/repo2/src/branch/master/test", "/", "../path/to/repo.git/"},
}
for _, kase := range kases {