-
Paul Irish committed 6 years ago1 parent 09656484
Revision indexing in progress... (symbol navigation in revisions will be accurate after indexed)
-
skipped 2 lines 3 3 load "test_helper/index" 4 4 5 5 ## 6 - ## Test environment 7 - ## 8 - @test "test environment" { 9 - assert_equal "$BROWSER" "echo" 10 - cd .. 11 - assert [ -e "$foldername" ] 12 - assert [ -e "$foldername/.git" ] 13 - } 14 - 15 - ## 16 - ## Help 17 - ## 18 - 19 - @test "help text" { 20 - run ../git-open -h 21 - assert_output --partial "usage: git open" 22 - } 23 - 24 - @test "invalid option" { 25 - run ../git-open --invalid-option 26 - assert_output --partial "error: unknown option \`invalid-option'" 27 - assert_output --partial "usage: git open" 28 - } 29 - 30 - ## 31 - ## url handling 32 - ## 33 - 34 - @test "url: insteadOf handling" { 35 - git config --global url.http://example.com/.insteadOf ex: 36 - git remote set-url origin ex:example.git 37 - git checkout -B master 38 - run ../git-open 39 - assert_output "http://example.com/example" 40 - } 41 - 42 - ## 43 - ## GitHub 44 - ## 45 - 46 - @test "gh: basic" { 47 - git remote set-url origin "[email protected]:user/repo.git" 48 - git checkout -B "master" 49 - run ../git-open 50 - assert_output "https://github.com/user/repo" 51 - } 52 - 53 - @test "gh: branch" { 54 - git remote set-url origin "[email protected]:user/repo.git" 55 - git checkout -B "mybranch" 56 - run ../git-open 57 - assert_output "https://github.com/user/repo/tree/mybranch" 58 - } 59 - 60 - @test "gh: non-origin remote" { 61 - git remote set-url origin "[email protected]:user/repo.git" 62 - git remote add upstream "[email protected]:upstreamorg/repo.git" 63 - run ../git-open "upstream" 64 - assert_output "https://github.com/upstreamorg/repo" 65 - 66 - git checkout -B "mybranch" 67 - run ../git-open "upstream" "otherbranch" 68 - assert_output "https://github.com/upstreamorg/repo/tree/otherbranch" 69 - } 70 - 71 - @test "gh: without git user" { 72 - # https://github.com/paulirish/git-open/pull/63 73 - git remote set-url origin "github.com:paulirish/git-open.git" 74 - run ../git-open 75 - assert_output "https://github.com/paulirish/git-open" 76 - } 77 - 78 - @test "gh: ssh origin" { 79 - git remote set-url origin "ssh://[email protected]/user/repo" 80 - run ../git-open 81 - assert_output "https://github.com/user/repo" 82 - 83 - # https://github.com/paulirish/git-open/pull/30 84 - git remote set-url origin "ssh://[email protected]/user/repo.git" 85 - run ../git-open 86 - assert_output "https://github.com/user/repo" 87 - } 88 - 89 - @test "gh: git protocol origin" { 90 - git remote set-url origin "git://github.com/user/repo.git" 91 - git checkout -B "master" 92 - run ../git-open 93 - assert_output "https://github.com/user/repo" 94 - } 95 - 96 - @test "gh: git open --issue" { 97 - # https://github.com/paulirish/git-open/pull/46 98 - git remote set-url origin "github.com:paulirish/git-open.git" 99 - git checkout -B "issues/#12" 100 - run ../git-open "--issue" 101 - assert_output "https://github.com/paulirish/git-open/issues/12" 102 - 103 - git checkout -B "fix-issue-37" 104 - run ../git-open "--issue" 105 - assert_output "https://github.com/paulirish/git-open/issues/37" 106 - 107 - git checkout -B "fix-issue-38" 108 - run ../git-open "-i" 109 - assert_output "https://github.com/paulirish/git-open/issues/38" 110 - } 111 - 112 - @test "gh: gist" { 113 - git remote set-url origin "[email protected]:2d84a6db1b41b4020685.git" 114 - run ../git-open 115 - assert_output "https://gist.github.com/2d84a6db1b41b4020685" 116 - } 117 - 118 - @test "basic: # and % in branch names are URL encoded" { 119 - # https://github.com/paulirish/git-open/pull/24 120 - git checkout -B "issue-#42" 121 - run ../git-open 122 - assert_output "https://github.com/paulirish/git-open/tree/issue-%2342" 123 - 124 - git checkout -B "just-50%" 125 - run ../git-open 126 - assert_output "https://github.com/paulirish/git-open/tree/just-50%25" 127 - } 128 - 129 - @test "basic: tracked remote is default" { 130 - # https://github.com/paulirish/git-open/issues/65 131 - 132 - # create a local git repo I can push to 133 - remote_name="sandboxremote" 134 - remote_url="[email protected]:userfork/git-open.git" 135 - 136 - # ideally we'd set a real upstream branch, but that's not possible without 137 - # pull/push'ing over the network. So we're cheating and just setting the 138 - # branch.<branch>.remote config 139 - # https://github.com/paulirish/git-open/pull/88#issuecomment-339813145 140 - git remote add $remote_name $remote_url 141 - git config --local --add branch.master.remote $remote_name 142 - 143 - run ../git-open 144 - assert_output "https://github.com/userfork/git-open" 145 - 146 - git config --local --add branch.master.remote origin 147 - run ../git-open 148 - assert_output "https://github.com/paulirish/git-open" 149 - } 150 - 151 - @test "basic: https url can contain port" { 152 - git remote set-url origin "https://github.com:99/user/repo.git" 153 - run ../git-open 154 - assert_output "https://github.com:99/user/repo" 155 - } 156 - 157 - @test "basic: ssh url has port removed from http url" { 158 - git remote set-url origin "ssh://github.com:22/user/repo.git" 159 - run ../git-open 160 - assert_output "https://github.com/user/repo" 161 - } 162 - 163 - @test "basic: http url scheme is preserved" { 164 - git remote set-url origin "http://github.com/user/repo.git" 165 - run ../git-open 166 - assert_output "http://github.com/user/repo" 167 - } 168 - 169 - 170 - ## 171 6 ## Bitbucket 172 7 ## 173 8 skipped 114 lines 288 123 assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=refs/heads/develop" 289 124 } 290 125 291 - 292 - ## 293 - ## GitLab 294 - ## 295 - 296 - @test "gitlab: default ssh origin style" { 297 - # https://github.com/paulirish/git-open/pull/55 298 - git remote set-url origin "[email protected]:user/repo" 299 - run ../git-open 300 - assert_output "https://gitlab.example.com/user/repo" 301 - } 302 - 303 - @test "gitlab: ssh://git@ origin" { 304 - # https://github.com/paulirish/git-open/pull/51 305 - git remote set-url origin "ssh://[email protected]/user/repo" 306 - run ../git-open 307 - assert_output "https://gitlab.domain.com/user/repo" 308 - refute_output --partial "//user" 309 - } 310 - 311 - @test "gitlab: separate domains" { 312 - # https://github.com/paulirish/git-open/pull/56 313 - git remote set-url origin "[email protected]:namespace/project.git" 314 - git config --local --add "open.https://git.example.com.domain" "gitlab.example.com" 315 - run ../git-open 316 - assert_output "https://gitlab.example.com/namespace/project" 317 - } 318 - 319 - @test "gitlab: special domain and path" { 320 - git remote set-url origin "ssh://[email protected]:7000/XXX/YYY.git" 321 - git config --local --add "open.https://git.example.com.domain" "repo.intranet/subpath" 322 - git config --local --add "open.https://git.example.com.protocol" "http" 323 - 324 - run ../git-open 325 - assert_output "http://repo.intranet/subpath/XXX/YYY" 326 - refute_output --partial "https://" 327 - } 328 - 329 - @test "gitlab: different port" { 330 - # https://github.com/paulirish/git-open/pull/76 331 - git remote set-url origin "ssh://[email protected]:7000/XXX/YYY.git" 332 - run ../git-open 333 - assert_output "https://git.example.com/XXX/YYY" 334 - refute_output --partial ":7000" 335 - 336 - git remote set-url origin "https://git.example.com:7000/XXX/YYY.git" 337 - run ../git-open 338 - assert_output "https://git.example.com:7000/XXX/YYY" 339 - } 340 - 341 - ## 342 - ## Visual Studio Team Services 343 - ## 344 - 345 - @test "vsts: https url" { 346 - git remote set-url origin "https://gitopen.visualstudio.com/Project/_git/Repository" 347 - run ../git-open 348 - assert_output --partial "https://gitopen.visualstudio.com/Project/_git/Repository" 349 - } 350 - 351 - @test "vsts: ssh url" { 352 - git remote add vsts_ssh "ssh://[email protected]:22/Project/_git/Repository" 353 - run ../git-open "vsts_ssh" 354 - assert_output "https://gitopen.visualstudio.com/Project/_git/Repository" 355 - } 356 - 357 - @test "vsts: on-premises tfs http url" { 358 - git remote set-url origin "http://tfs.example.com:8080/Project/_git/Repository" 359 - run ../git-open 360 - assert_output --partial "http://tfs.example.com:8080/Project/_git/Repository" 361 - } 362 - 363 - @test "vsts: branch" { 364 - git remote set-url origin "ssh://[email protected]:22/_git/Repository" 365 - git checkout -B "mybranch" 366 - run ../git-open 367 - assert_output "https://gitopen.visualstudio.com/_git/Repository?version=GBmybranch" 368 - } 369 - 370 - @test "vsts: on-premises tfs branch" { 371 - git remote set-url origin "http://tfs.example.com:8080/Project/Folder/_git/Repository" 372 - git checkout -B "mybranch" 373 - run ../git-open 374 - assert_output "http://tfs.example.com:8080/Project/Folder/_git/Repository?version=GBmybranch" 375 - } 376 - 377 - @test "vsts: issue" { 378 - git remote set-url origin "http://tfs.example.com:8080/Project/Folder/_git/Repository" 379 - git checkout -B "bugfix-36" 380 - run ../git-open "--issue" 381 - assert_output "http://tfs.example.com:8080/Project/Folder/_workitems?id=36" 382 - } 383 - -
skipped 2 lines 3 3 load "test_helper/index" 4 4 5 5 ## 6 - ## Test environment 7 - ## 8 - @test "test environment" { 9 - assert_equal "$BROWSER" "echo" 10 - cd .. 11 - assert [ -e "$foldername" ] 12 - assert [ -e "$foldername/.git" ] 13 - } 14 - 15 - ## 16 - ## Help 17 - ## 18 - 19 - @test "help text" { 20 - run ../git-open -h 21 - assert_output --partial "usage: git open" 22 - } 23 - 24 - @test "invalid option" { 25 - run ../git-open --invalid-option 26 - assert_output --partial "error: unknown option \`invalid-option'" 27 - assert_output --partial "usage: git open" 28 - } 29 - 30 - ## 31 - ## url handling 32 - ## 33 - 34 - @test "url: insteadOf handling" { 35 - git config --global url.http://example.com/.insteadOf ex: 36 - git remote set-url origin ex:example.git 37 - git checkout -B master 38 - run ../git-open 39 - assert_output "http://example.com/example" 40 - } 41 - 42 - ## 43 6 ## GitHub 44 7 ## 45 8 skipped 120 lines 166 129 assert_output "http://github.com/user/repo" 167 130 } 168 131 169 - 170 - ## 171 - ## Bitbucket 172 - ## 173 - 174 - @test "bitbucket: basic" { 175 - git remote set-url origin "[email protected]:paulirish/crbug-extension.git" 176 - run ../git-open 177 - assert_output --partial "https://bitbucket.org/paulirish/crbug-extension" 178 - } 179 - 180 - @test "bitbucket: non-origin remote" { 181 - # https://github.com/paulirish/git-open/pull/4 182 - git remote add bbclone "[email protected]:rwhitbeck/git-open.git" 183 - run ../git-open "bbclone" 184 - assert_output "https://bitbucket.org/rwhitbeck/git-open" 185 - } 186 - 187 - @test "bitbucket: open source view" { 188 - # https://github.com/paulirish/git-open/pull/26 189 - git remote set-url origin "https://bitbucket.org/kisom/consbri.git" 190 - git checkout -B "devel" 191 - run ../git-open 192 - refute_output --partial "//kisom" 193 - assert_output "https://bitbucket.org/kisom/consbri/src?at=devel" 194 - } 195 - 196 - @test "bitbucket: open source view with a slash/branch" { 197 - # https://github.com/paulirish/git-open/pull/26 198 - # see https://github.com/paulirish/git-open/issues/80 for feat/branchname issues 199 - git remote set-url origin "https://bitbucket.org/guyzmo/git-repo.git" 200 - git checkout -B "bugfix/conftest_fix" 201 - run ../git-open 202 - assert_output --partial "https://bitbucket.org/guyzmo/git-repo/src" 203 - # BB appears to be fine with both literal or URL-encoded forward slash 204 - assert_output --partial "?at=bugfix/conftest_fix" 205 - } 206 - 207 - @test "bitbucket: ssh:// clone urls" { 208 - # https://github.com/paulirish/git-open/pull/36 209 - git remote set-url origin "ssh://[email protected]/lbesson/bin.git" 210 - run ../git-open 211 - assert_output "https://bitbucket.org/lbesson/bin" 212 - } 213 - 214 - @test "bitbucket: no username@ in final url" { 215 - # https://github.com/paulirish/git-open/pull/69 216 - git remote set-url origin "https://[email protected]/trend_rand/test-repo.git" 217 - run ../git-open 218 - refute_output --partial "@" 219 - } 220 - 221 - @test "bitbucket: Bitbucket Server" { 222 - # https://github.com/paulirish/git-open/issues/77#issuecomment-309044010 223 - git remote set-url origin "https://[email protected]/scm/ppp/rrr.git" 224 - run ../git-open 225 - 226 - # any of the following are acceptable 227 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr" || 228 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse/?at=master" || 229 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse/?at=refs%2Fheads%2Fmaster" 230 - } 231 - 232 - @test "bitbucket: Bitbucket Server branch" { 233 - # https://github.com/paulirish/git-open/issues/80 234 - git remote set-url origin "https://[email protected]/scm/ppp/rrr.git" 235 - git checkout -B "develop" 236 - run ../git-open 237 - 238 - # The following query args work with BB Server: 239 - # at=refs%2Fheads%2Fdevelop, at=develop, at=refs/heads/develop 240 - # However /src/develop does not (unlike bitbucket.org) 241 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=develop" || 242 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 243 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=refs/heads/develop" 244 - 245 - refute_output --partial "/src/develop" 246 - } 247 - 248 - 249 - @test "bitbucket: Bitbucket Server private user repos" { 250 - # https://github.com/paulirish/git-open/pull/83#issuecomment-309968538 251 - git remote set-url origin "https://mybb.domain.com/scm/~first.last/rrr.git" 252 - git checkout -B "develop" 253 - run ../git-open 254 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=develop" || 255 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 256 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=refs/heads/develop" 257 - 258 - } 259 - 260 - 261 - @test "bitbucket: Bitbucket Server with different root context" { 262 - # https://github.com/paulirish/git-open/pull/15 263 - git remote set-url origin "https://[email protected]/git/scm/ppp/test-repo.git" 264 - run ../git-open 265 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo" || 266 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo/?at=master" || 267 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo/?at=refs%2Fheads%2Fmaster" 268 - } 269 - 270 - 271 - @test "bitbucket: Bitbucket Server with different root context with multiple parts" { 272 - # https://github.com/paulirish/git-open/pull/15 273 - git remote set-url origin "https://[email protected]/really/long/root/context/scm/ppp/test-repo.git" 274 - run ../git-open 275 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo" || 276 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo/?at=master" || 277 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo/?at=refs%2Fheads%2Fmaster" 278 - } 279 - 280 - 281 - @test "bitbucket: Bitbucket Server private user repos with different root context" { 282 - # https://github.com/paulirish/git-open/pull/83#issuecomment-309968538 283 - git remote set-url origin "https://mybb.domain.com/root/context/scm/~first.last/rrr.git" 284 - git checkout -B "develop" 285 - run ../git-open 286 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=develop" || 287 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 288 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=refs/heads/develop" 289 - } 290 - 291 - 292 - ## 293 - ## GitLab 294 - ## 295 - 296 - @test "gitlab: default ssh origin style" { 297 - # https://github.com/paulirish/git-open/pull/55 298 - git remote set-url origin "[email protected]:user/repo" 299 - run ../git-open 300 - assert_output "https://gitlab.example.com/user/repo" 301 - } 302 - 303 - @test "gitlab: ssh://git@ origin" { 304 - # https://github.com/paulirish/git-open/pull/51 305 - git remote set-url origin "ssh://[email protected]/user/repo" 306 - run ../git-open 307 - assert_output "https://gitlab.domain.com/user/repo" 308 - refute_output --partial "//user" 309 - } 310 - 311 - @test "gitlab: separate domains" { 312 - # https://github.com/paulirish/git-open/pull/56 313 - git remote set-url origin "[email protected]:namespace/project.git" 314 - git config --local --add "open.https://git.example.com.domain" "gitlab.example.com" 315 - run ../git-open 316 - assert_output "https://gitlab.example.com/namespace/project" 317 - } 318 - 319 - @test "gitlab: special domain and path" { 320 - git remote set-url origin "ssh://[email protected]:7000/XXX/YYY.git" 321 - git config --local --add "open.https://git.example.com.domain" "repo.intranet/subpath" 322 - git config --local --add "open.https://git.example.com.protocol" "http" 323 - 324 - run ../git-open 325 - assert_output "http://repo.intranet/subpath/XXX/YYY" 326 - refute_output --partial "https://" 327 - } 328 - 329 - @test "gitlab: different port" { 330 - # https://github.com/paulirish/git-open/pull/76 331 - git remote set-url origin "ssh://[email protected]:7000/XXX/YYY.git" 332 - run ../git-open 333 - assert_output "https://git.example.com/XXX/YYY" 334 - refute_output --partial ":7000" 335 - 336 - git remote set-url origin "https://git.example.com:7000/XXX/YYY.git" 337 - run ../git-open 338 - assert_output "https://git.example.com:7000/XXX/YYY" 339 - } 340 - 341 - ## 342 - ## Visual Studio Team Services 343 - ## 344 - 345 - @test "vsts: https url" { 346 - git remote set-url origin "https://gitopen.visualstudio.com/Project/_git/Repository" 347 - run ../git-open 348 - assert_output --partial "https://gitopen.visualstudio.com/Project/_git/Repository" 349 - } 350 - 351 - @test "vsts: ssh url" { 352 - git remote add vsts_ssh "ssh://[email protected]:22/Project/_git/Repository" 353 - run ../git-open "vsts_ssh" 354 - assert_output "https://gitopen.visualstudio.com/Project/_git/Repository" 355 - } 356 - 357 - @test "vsts: on-premises tfs http url" { 358 - git remote set-url origin "http://tfs.example.com:8080/Project/_git/Repository" 359 - run ../git-open 360 - assert_output --partial "http://tfs.example.com:8080/Project/_git/Repository" 361 - } 362 - 363 - @test "vsts: branch" { 364 - git remote set-url origin "ssh://[email protected]:22/_git/Repository" 365 - git checkout -B "mybranch" 366 - run ../git-open 367 - assert_output "https://gitopen.visualstudio.com/_git/Repository?version=GBmybranch" 368 - } 369 - 370 - @test "vsts: on-premises tfs branch" { 371 - git remote set-url origin "http://tfs.example.com:8080/Project/Folder/_git/Repository" 372 - git checkout -B "mybranch" 373 - run ../git-open 374 - assert_output "http://tfs.example.com:8080/Project/Folder/_git/Repository?version=GBmybranch" 375 - } 376 - 377 - @test "vsts: issue" { 378 - git remote set-url origin "http://tfs.example.com:8080/Project/Folder/_git/Repository" 379 - git checkout -B "bugfix-36" 380 - run ../git-open "--issue" 381 - assert_output "http://tfs.example.com:8080/Project/Folder/_workitems?id=36" 382 - } 383 - -
skipped 2 lines 3 3 load "test_helper/index" 4 4 5 5 ## 6 - ## Test environment 7 - ## 8 - @test "test environment" { 9 - assert_equal "$BROWSER" "echo" 10 - cd .. 11 - assert [ -e "$foldername" ] 12 - assert [ -e "$foldername/.git" ] 13 - } 14 - 15 - ## 16 - ## Help 17 - ## 18 - 19 - @test "help text" { 20 - run ../git-open -h 21 - assert_output --partial "usage: git open" 22 - } 23 - 24 - @test "invalid option" { 25 - run ../git-open --invalid-option 26 - assert_output --partial "error: unknown option \`invalid-option'" 27 - assert_output --partial "usage: git open" 28 - } 29 - 30 - ## 31 - ## url handling 32 - ## 33 - 34 - @test "url: insteadOf handling" { 35 - git config --global url.http://example.com/.insteadOf ex: 36 - git remote set-url origin ex:example.git 37 - git checkout -B master 38 - run ../git-open 39 - assert_output "http://example.com/example" 40 - } 41 - 42 - ## 43 - ## GitHub 44 - ## 45 - 46 - @test "gh: basic" { 47 - git remote set-url origin "[email protected]:user/repo.git" 48 - git checkout -B "master" 49 - run ../git-open 50 - assert_output "https://github.com/user/repo" 51 - } 52 - 53 - @test "gh: branch" { 54 - git remote set-url origin "[email protected]:user/repo.git" 55 - git checkout -B "mybranch" 56 - run ../git-open 57 - assert_output "https://github.com/user/repo/tree/mybranch" 58 - } 59 - 60 - @test "gh: non-origin remote" { 61 - git remote set-url origin "[email protected]:user/repo.git" 62 - git remote add upstream "[email protected]:upstreamorg/repo.git" 63 - run ../git-open "upstream" 64 - assert_output "https://github.com/upstreamorg/repo" 65 - 66 - git checkout -B "mybranch" 67 - run ../git-open "upstream" "otherbranch" 68 - assert_output "https://github.com/upstreamorg/repo/tree/otherbranch" 69 - } 70 - 71 - @test "gh: without git user" { 72 - # https://github.com/paulirish/git-open/pull/63 73 - git remote set-url origin "github.com:paulirish/git-open.git" 74 - run ../git-open 75 - assert_output "https://github.com/paulirish/git-open" 76 - } 77 - 78 - @test "gh: ssh origin" { 79 - git remote set-url origin "ssh://[email protected]/user/repo" 80 - run ../git-open 81 - assert_output "https://github.com/user/repo" 82 - 83 - # https://github.com/paulirish/git-open/pull/30 84 - git remote set-url origin "ssh://[email protected]/user/repo.git" 85 - run ../git-open 86 - assert_output "https://github.com/user/repo" 87 - } 88 - 89 - @test "gh: git protocol origin" { 90 - git remote set-url origin "git://github.com/user/repo.git" 91 - git checkout -B "master" 92 - run ../git-open 93 - assert_output "https://github.com/user/repo" 94 - } 95 - 96 - @test "gh: git open --issue" { 97 - # https://github.com/paulirish/git-open/pull/46 98 - git remote set-url origin "github.com:paulirish/git-open.git" 99 - git checkout -B "issues/#12" 100 - run ../git-open "--issue" 101 - assert_output "https://github.com/paulirish/git-open/issues/12" 102 - 103 - git checkout -B "fix-issue-37" 104 - run ../git-open "--issue" 105 - assert_output "https://github.com/paulirish/git-open/issues/37" 106 - 107 - git checkout -B "fix-issue-38" 108 - run ../git-open "-i" 109 - assert_output "https://github.com/paulirish/git-open/issues/38" 110 - } 111 - 112 - @test "gh: gist" { 113 - git remote set-url origin "[email protected]:2d84a6db1b41b4020685.git" 114 - run ../git-open 115 - assert_output "https://gist.github.com/2d84a6db1b41b4020685" 116 - } 117 - 118 - @test "basic: # and % in branch names are URL encoded" { 119 - # https://github.com/paulirish/git-open/pull/24 120 - git checkout -B "issue-#42" 121 - run ../git-open 122 - assert_output "https://github.com/paulirish/git-open/tree/issue-%2342" 123 - 124 - git checkout -B "just-50%" 125 - run ../git-open 126 - assert_output "https://github.com/paulirish/git-open/tree/just-50%25" 127 - } 128 - 129 - @test "basic: tracked remote is default" { 130 - # https://github.com/paulirish/git-open/issues/65 131 - 132 - # create a local git repo I can push to 133 - remote_name="sandboxremote" 134 - remote_url="[email protected]:userfork/git-open.git" 135 - 136 - # ideally we'd set a real upstream branch, but that's not possible without 137 - # pull/push'ing over the network. So we're cheating and just setting the 138 - # branch.<branch>.remote config 139 - # https://github.com/paulirish/git-open/pull/88#issuecomment-339813145 140 - git remote add $remote_name $remote_url 141 - git config --local --add branch.master.remote $remote_name 142 - 143 - run ../git-open 144 - assert_output "https://github.com/userfork/git-open" 145 - 146 - git config --local --add branch.master.remote origin 147 - run ../git-open 148 - assert_output "https://github.com/paulirish/git-open" 149 - } 150 - 151 - @test "basic: https url can contain port" { 152 - git remote set-url origin "https://github.com:99/user/repo.git" 153 - run ../git-open 154 - assert_output "https://github.com:99/user/repo" 155 - } 156 - 157 - @test "basic: ssh url has port removed from http url" { 158 - git remote set-url origin "ssh://github.com:22/user/repo.git" 159 - run ../git-open 160 - assert_output "https://github.com/user/repo" 161 - } 162 - 163 - @test "basic: http url scheme is preserved" { 164 - git remote set-url origin "http://github.com/user/repo.git" 165 - run ../git-open 166 - assert_output "http://github.com/user/repo" 167 - } 168 - 169 - 170 - ## 171 - ## Bitbucket 172 - ## 173 - 174 - @test "bitbucket: basic" { 175 - git remote set-url origin "[email protected]:paulirish/crbug-extension.git" 176 - run ../git-open 177 - assert_output --partial "https://bitbucket.org/paulirish/crbug-extension" 178 - } 179 - 180 - @test "bitbucket: non-origin remote" { 181 - # https://github.com/paulirish/git-open/pull/4 182 - git remote add bbclone "[email protected]:rwhitbeck/git-open.git" 183 - run ../git-open "bbclone" 184 - assert_output "https://bitbucket.org/rwhitbeck/git-open" 185 - } 186 - 187 - @test "bitbucket: open source view" { 188 - # https://github.com/paulirish/git-open/pull/26 189 - git remote set-url origin "https://bitbucket.org/kisom/consbri.git" 190 - git checkout -B "devel" 191 - run ../git-open 192 - refute_output --partial "//kisom" 193 - assert_output "https://bitbucket.org/kisom/consbri/src?at=devel" 194 - } 195 - 196 - @test "bitbucket: open source view with a slash/branch" { 197 - # https://github.com/paulirish/git-open/pull/26 198 - # see https://github.com/paulirish/git-open/issues/80 for feat/branchname issues 199 - git remote set-url origin "https://bitbucket.org/guyzmo/git-repo.git" 200 - git checkout -B "bugfix/conftest_fix" 201 - run ../git-open 202 - assert_output --partial "https://bitbucket.org/guyzmo/git-repo/src" 203 - # BB appears to be fine with both literal or URL-encoded forward slash 204 - assert_output --partial "?at=bugfix/conftest_fix" 205 - } 206 - 207 - @test "bitbucket: ssh:// clone urls" { 208 - # https://github.com/paulirish/git-open/pull/36 209 - git remote set-url origin "ssh://[email protected]/lbesson/bin.git" 210 - run ../git-open 211 - assert_output "https://bitbucket.org/lbesson/bin" 212 - } 213 - 214 - @test "bitbucket: no username@ in final url" { 215 - # https://github.com/paulirish/git-open/pull/69 216 - git remote set-url origin "https://[email protected]/trend_rand/test-repo.git" 217 - run ../git-open 218 - refute_output --partial "@" 219 - } 220 - 221 - @test "bitbucket: Bitbucket Server" { 222 - # https://github.com/paulirish/git-open/issues/77#issuecomment-309044010 223 - git remote set-url origin "https://[email protected]/scm/ppp/rrr.git" 224 - run ../git-open 225 - 226 - # any of the following are acceptable 227 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr" || 228 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse/?at=master" || 229 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse/?at=refs%2Fheads%2Fmaster" 230 - } 231 - 232 - @test "bitbucket: Bitbucket Server branch" { 233 - # https://github.com/paulirish/git-open/issues/80 234 - git remote set-url origin "https://[email protected]/scm/ppp/rrr.git" 235 - git checkout -B "develop" 236 - run ../git-open 237 - 238 - # The following query args work with BB Server: 239 - # at=refs%2Fheads%2Fdevelop, at=develop, at=refs/heads/develop 240 - # However /src/develop does not (unlike bitbucket.org) 241 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=develop" || 242 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 243 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=refs/heads/develop" 244 - 245 - refute_output --partial "/src/develop" 246 - } 247 - 248 - 249 - @test "bitbucket: Bitbucket Server private user repos" { 250 - # https://github.com/paulirish/git-open/pull/83#issuecomment-309968538 251 - git remote set-url origin "https://mybb.domain.com/scm/~first.last/rrr.git" 252 - git checkout -B "develop" 253 - run ../git-open 254 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=develop" || 255 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 256 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=refs/heads/develop" 257 - 258 - } 259 - 260 - 261 - @test "bitbucket: Bitbucket Server with different root context" { 262 - # https://github.com/paulirish/git-open/pull/15 263 - git remote set-url origin "https://[email protected]/git/scm/ppp/test-repo.git" 264 - run ../git-open 265 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo" || 266 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo/?at=master" || 267 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo/?at=refs%2Fheads%2Fmaster" 268 - } 269 - 270 - 271 - @test "bitbucket: Bitbucket Server with different root context with multiple parts" { 272 - # https://github.com/paulirish/git-open/pull/15 273 - git remote set-url origin "https://[email protected]/really/long/root/context/scm/ppp/test-repo.git" 274 - run ../git-open 275 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo" || 276 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo/?at=master" || 277 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo/?at=refs%2Fheads%2Fmaster" 278 - } 279 - 280 - 281 - @test "bitbucket: Bitbucket Server private user repos with different root context" { 282 - # https://github.com/paulirish/git-open/pull/83#issuecomment-309968538 283 - git remote set-url origin "https://mybb.domain.com/root/context/scm/~first.last/rrr.git" 284 - git checkout -B "develop" 285 - run ../git-open 286 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=develop" || 287 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 288 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=refs/heads/develop" 289 - } 290 - 291 - 292 - ## 293 6 ## GitLab 294 7 ## 295 8 skipped 42 lines 338 51 assert_output "https://git.example.com:7000/XXX/YYY" 339 52 } 340 53 341 - ## 342 - ## Visual Studio Team Services 343 - ## 344 - 345 - @test "vsts: https url" { 346 - git remote set-url origin "https://gitopen.visualstudio.com/Project/_git/Repository" 347 - run ../git-open 348 - assert_output --partial "https://gitopen.visualstudio.com/Project/_git/Repository" 349 - } 350 - 351 - @test "vsts: ssh url" { 352 - git remote add vsts_ssh "ssh://[email protected]:22/Project/_git/Repository" 353 - run ../git-open "vsts_ssh" 354 - assert_output "https://gitopen.visualstudio.com/Project/_git/Repository" 355 - } 356 - 357 - @test "vsts: on-premises tfs http url" { 358 - git remote set-url origin "http://tfs.example.com:8080/Project/_git/Repository" 359 - run ../git-open 360 - assert_output --partial "http://tfs.example.com:8080/Project/_git/Repository" 361 - } 362 - 363 - @test "vsts: branch" { 364 - git remote set-url origin "ssh://[email protected]:22/_git/Repository" 365 - git checkout -B "mybranch" 366 - run ../git-open 367 - assert_output "https://gitopen.visualstudio.com/_git/Repository?version=GBmybranch" 368 - } 369 - 370 - @test "vsts: on-premises tfs branch" { 371 - git remote set-url origin "http://tfs.example.com:8080/Project/Folder/_git/Repository" 372 - git checkout -B "mybranch" 373 - run ../git-open 374 - assert_output "http://tfs.example.com:8080/Project/Folder/_git/Repository?version=GBmybranch" 375 - } 376 - 377 - @test "vsts: issue" { 378 - git remote set-url origin "http://tfs.example.com:8080/Project/Folder/_git/Repository" 379 - git checkout -B "bugfix-36" 380 - run ../git-open "--issue" 381 - assert_output "http://tfs.example.com:8080/Project/Folder/_workitems?id=36" 382 - } 383 - -
skipped 2 lines 3 3 load "test_helper/index" 4 4 5 5 ## 6 - ## Test environment 7 - ## 8 - @test "test environment" { 9 - assert_equal "$BROWSER" "echo" 10 - cd .. 11 - assert [ -e "$foldername" ] 12 - assert [ -e "$foldername/.git" ] 13 - } 14 - 15 - ## 16 - ## Help 17 - ## 18 - 19 - @test "help text" { 20 - run ../git-open -h 21 - assert_output --partial "usage: git open" 22 - } 23 - 24 - @test "invalid option" { 25 - run ../git-open --invalid-option 26 - assert_output --partial "error: unknown option \`invalid-option'" 27 - assert_output --partial "usage: git open" 28 - } 29 - 30 - ## 31 - ## url handling 32 - ## 33 - 34 - @test "url: insteadOf handling" { 35 - git config --global url.http://example.com/.insteadOf ex: 36 - git remote set-url origin ex:example.git 37 - git checkout -B master 38 - run ../git-open 39 - assert_output "http://example.com/example" 40 - } 41 - 42 - ## 43 - ## GitHub 44 - ## 45 - 46 - @test "gh: basic" { 47 - git remote set-url origin "[email protected]:user/repo.git" 48 - git checkout -B "master" 49 - run ../git-open 50 - assert_output "https://github.com/user/repo" 51 - } 52 - 53 - @test "gh: branch" { 54 - git remote set-url origin "[email protected]:user/repo.git" 55 - git checkout -B "mybranch" 56 - run ../git-open 57 - assert_output "https://github.com/user/repo/tree/mybranch" 58 - } 59 - 60 - @test "gh: non-origin remote" { 61 - git remote set-url origin "[email protected]:user/repo.git" 62 - git remote add upstream "[email protected]:upstreamorg/repo.git" 63 - run ../git-open "upstream" 64 - assert_output "https://github.com/upstreamorg/repo" 65 - 66 - git checkout -B "mybranch" 67 - run ../git-open "upstream" "otherbranch" 68 - assert_output "https://github.com/upstreamorg/repo/tree/otherbranch" 69 - } 70 - 71 - @test "gh: without git user" { 72 - # https://github.com/paulirish/git-open/pull/63 73 - git remote set-url origin "github.com:paulirish/git-open.git" 74 - run ../git-open 75 - assert_output "https://github.com/paulirish/git-open" 76 - } 77 - 78 - @test "gh: ssh origin" { 79 - git remote set-url origin "ssh://[email protected]/user/repo" 80 - run ../git-open 81 - assert_output "https://github.com/user/repo" 82 - 83 - # https://github.com/paulirish/git-open/pull/30 84 - git remote set-url origin "ssh://[email protected]/user/repo.git" 85 - run ../git-open 86 - assert_output "https://github.com/user/repo" 87 - } 88 - 89 - @test "gh: git protocol origin" { 90 - git remote set-url origin "git://github.com/user/repo.git" 91 - git checkout -B "master" 92 - run ../git-open 93 - assert_output "https://github.com/user/repo" 94 - } 95 - 96 - @test "gh: git open --issue" { 97 - # https://github.com/paulirish/git-open/pull/46 98 - git remote set-url origin "github.com:paulirish/git-open.git" 99 - git checkout -B "issues/#12" 100 - run ../git-open "--issue" 101 - assert_output "https://github.com/paulirish/git-open/issues/12" 102 - 103 - git checkout -B "fix-issue-37" 104 - run ../git-open "--issue" 105 - assert_output "https://github.com/paulirish/git-open/issues/37" 106 - 107 - git checkout -B "fix-issue-38" 108 - run ../git-open "-i" 109 - assert_output "https://github.com/paulirish/git-open/issues/38" 110 - } 111 - 112 - @test "gh: gist" { 113 - git remote set-url origin "[email protected]:2d84a6db1b41b4020685.git" 114 - run ../git-open 115 - assert_output "https://gist.github.com/2d84a6db1b41b4020685" 116 - } 117 - 118 - @test "basic: # and % in branch names are URL encoded" { 119 - # https://github.com/paulirish/git-open/pull/24 120 - git checkout -B "issue-#42" 121 - run ../git-open 122 - assert_output "https://github.com/paulirish/git-open/tree/issue-%2342" 123 - 124 - git checkout -B "just-50%" 125 - run ../git-open 126 - assert_output "https://github.com/paulirish/git-open/tree/just-50%25" 127 - } 128 - 129 - @test "basic: tracked remote is default" { 130 - # https://github.com/paulirish/git-open/issues/65 131 - 132 - # create a local git repo I can push to 133 - remote_name="sandboxremote" 134 - remote_url="[email protected]:userfork/git-open.git" 135 - 136 - # ideally we'd set a real upstream branch, but that's not possible without 137 - # pull/push'ing over the network. So we're cheating and just setting the 138 - # branch.<branch>.remote config 139 - # https://github.com/paulirish/git-open/pull/88#issuecomment-339813145 140 - git remote add $remote_name $remote_url 141 - git config --local --add branch.master.remote $remote_name 142 - 143 - run ../git-open 144 - assert_output "https://github.com/userfork/git-open" 145 - 146 - git config --local --add branch.master.remote origin 147 - run ../git-open 148 - assert_output "https://github.com/paulirish/git-open" 149 - } 150 - 151 - @test "basic: https url can contain port" { 152 - git remote set-url origin "https://github.com:99/user/repo.git" 153 - run ../git-open 154 - assert_output "https://github.com:99/user/repo" 155 - } 156 - 157 - @test "basic: ssh url has port removed from http url" { 158 - git remote set-url origin "ssh://github.com:22/user/repo.git" 159 - run ../git-open 160 - assert_output "https://github.com/user/repo" 161 - } 162 - 163 - @test "basic: http url scheme is preserved" { 164 - git remote set-url origin "http://github.com/user/repo.git" 165 - run ../git-open 166 - assert_output "http://github.com/user/repo" 167 - } 168 - 169 - 170 - ## 171 - ## Bitbucket 172 - ## 173 - 174 - @test "bitbucket: basic" { 175 - git remote set-url origin "[email protected]:paulirish/crbug-extension.git" 176 - run ../git-open 177 - assert_output --partial "https://bitbucket.org/paulirish/crbug-extension" 178 - } 179 - 180 - @test "bitbucket: non-origin remote" { 181 - # https://github.com/paulirish/git-open/pull/4 182 - git remote add bbclone "[email protected]:rwhitbeck/git-open.git" 183 - run ../git-open "bbclone" 184 - assert_output "https://bitbucket.org/rwhitbeck/git-open" 185 - } 186 - 187 - @test "bitbucket: open source view" { 188 - # https://github.com/paulirish/git-open/pull/26 189 - git remote set-url origin "https://bitbucket.org/kisom/consbri.git" 190 - git checkout -B "devel" 191 - run ../git-open 192 - refute_output --partial "//kisom" 193 - assert_output "https://bitbucket.org/kisom/consbri/src?at=devel" 194 - } 195 - 196 - @test "bitbucket: open source view with a slash/branch" { 197 - # https://github.com/paulirish/git-open/pull/26 198 - # see https://github.com/paulirish/git-open/issues/80 for feat/branchname issues 199 - git remote set-url origin "https://bitbucket.org/guyzmo/git-repo.git" 200 - git checkout -B "bugfix/conftest_fix" 201 - run ../git-open 202 - assert_output --partial "https://bitbucket.org/guyzmo/git-repo/src" 203 - # BB appears to be fine with both literal or URL-encoded forward slash 204 - assert_output --partial "?at=bugfix/conftest_fix" 205 - } 206 - 207 - @test "bitbucket: ssh:// clone urls" { 208 - # https://github.com/paulirish/git-open/pull/36 209 - git remote set-url origin "ssh://[email protected]/lbesson/bin.git" 210 - run ../git-open 211 - assert_output "https://bitbucket.org/lbesson/bin" 212 - } 213 - 214 - @test "bitbucket: no username@ in final url" { 215 - # https://github.com/paulirish/git-open/pull/69 216 - git remote set-url origin "https://[email protected]/trend_rand/test-repo.git" 217 - run ../git-open 218 - refute_output --partial "@" 219 - } 220 - 221 - @test "bitbucket: Bitbucket Server" { 222 - # https://github.com/paulirish/git-open/issues/77#issuecomment-309044010 223 - git remote set-url origin "https://[email protected]/scm/ppp/rrr.git" 224 - run ../git-open 225 - 226 - # any of the following are acceptable 227 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr" || 228 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse/?at=master" || 229 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse/?at=refs%2Fheads%2Fmaster" 230 - } 231 - 232 - @test "bitbucket: Bitbucket Server branch" { 233 - # https://github.com/paulirish/git-open/issues/80 234 - git remote set-url origin "https://[email protected]/scm/ppp/rrr.git" 235 - git checkout -B "develop" 236 - run ../git-open 237 - 238 - # The following query args work with BB Server: 239 - # at=refs%2Fheads%2Fdevelop, at=develop, at=refs/heads/develop 240 - # However /src/develop does not (unlike bitbucket.org) 241 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=develop" || 242 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 243 - assert_output "https://mybb.domain.com/projects/ppp/repos/rrr/browse?at=refs/heads/develop" 244 - 245 - refute_output --partial "/src/develop" 246 - } 247 - 248 - 249 - @test "bitbucket: Bitbucket Server private user repos" { 250 - # https://github.com/paulirish/git-open/pull/83#issuecomment-309968538 251 - git remote set-url origin "https://mybb.domain.com/scm/~first.last/rrr.git" 252 - git checkout -B "develop" 253 - run ../git-open 254 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=develop" || 255 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 256 - assert_output "https://mybb.domain.com/projects/~first.last/repos/rrr/browse?at=refs/heads/develop" 257 - 258 - } 259 - 260 - 261 - @test "bitbucket: Bitbucket Server with different root context" { 262 - # https://github.com/paulirish/git-open/pull/15 263 - git remote set-url origin "https://[email protected]/git/scm/ppp/test-repo.git" 264 - run ../git-open 265 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo" || 266 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo/?at=master" || 267 - assert_output "https://bitbucket.example.com/git/projects/ppp/repos/test-repo/?at=refs%2Fheads%2Fmaster" 268 - } 269 - 270 - 271 - @test "bitbucket: Bitbucket Server with different root context with multiple parts" { 272 - # https://github.com/paulirish/git-open/pull/15 273 - git remote set-url origin "https://[email protected]/really/long/root/context/scm/ppp/test-repo.git" 274 - run ../git-open 275 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo" || 276 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo/?at=master" || 277 - assert_output "https://bitbucket.example.com/really/long/root/context/projects/ppp/repos/test-repo/?at=refs%2Fheads%2Fmaster" 278 - } 279 - 280 - 281 - @test "bitbucket: Bitbucket Server private user repos with different root context" { 282 - # https://github.com/paulirish/git-open/pull/83#issuecomment-309968538 283 - git remote set-url origin "https://mybb.domain.com/root/context/scm/~first.last/rrr.git" 284 - git checkout -B "develop" 285 - run ../git-open 286 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=develop" || 287 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=refs%2Fheads%2Fdevelop" || 288 - assert_output "https://mybb.domain.com/root/context/projects/~first.last/repos/rrr/browse?at=refs/heads/develop" 289 - } 290 - 291 - 292 - ## 293 - ## GitLab 294 - ## 295 - 296 - @test "gitlab: default ssh origin style" { 297 - # https://github.com/paulirish/git-open/pull/55 298 - git remote set-url origin "[email protected]:user/repo" 299 - run ../git-open 300 - assert_output "https://gitlab.example.com/user/repo" 301 - } 302 - 303 - @test "gitlab: ssh://git@ origin" { 304 - # https://github.com/paulirish/git-open/pull/51 305 - git remote set-url origin "ssh://[email protected]/user/repo" 306 - run ../git-open 307 - assert_output "https://gitlab.domain.com/user/repo" 308 - refute_output --partial "//user" 309 - } 310 - 311 - @test "gitlab: separate domains" { 312 - # https://github.com/paulirish/git-open/pull/56 313 - git remote set-url origin "[email protected]:namespace/project.git" 314 - git config --local --add "open.https://git.example.com.domain" "gitlab.example.com" 315 - run ../git-open 316 - assert_output "https://gitlab.example.com/namespace/project" 317 - } 318 - 319 - @test "gitlab: special domain and path" { 320 - git remote set-url origin "ssh://[email protected]:7000/XXX/YYY.git" 321 - git config --local --add "open.https://git.example.com.domain" "repo.intranet/subpath" 322 - git config --local --add "open.https://git.example.com.protocol" "http" 323 - 324 - run ../git-open 325 - assert_output "http://repo.intranet/subpath/XXX/YYY" 326 - refute_output --partial "https://" 327 - } 328 - 329 - @test "gitlab: different port" { 330 - # https://github.com/paulirish/git-open/pull/76 331 - git remote set-url origin "ssh://[email protected]:7000/XXX/YYY.git" 332 - run ../git-open 333 - assert_output "https://git.example.com/XXX/YYY" 334 - refute_output --partial ":7000" 335 - 336 - git remote set-url origin "https://git.example.com:7000/XXX/YYY.git" 337 - run ../git-open 338 - assert_output "https://git.example.com:7000/XXX/YYY" 339 - } 340 - 341 - ## 342 6 ## Visual Studio Team Services 343 7 ## 344 8 skipped 39 lines