annotate mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialUrlSupportTest.java @ 1068:2d8aab94494f Lakhnau-2020.2.x release-86063

TW-70693
author victory.bedrosova
date Thu, 18 Mar 2021 18:30:34 +0100
parents 471eaf5420c8
children 776adc1cf2ad
rev   line source
732
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
1 /*
976
7bf4d943d5bb Update copyright
pavel.sher
parents: 960
diff changeset
2 * Copyright 2000-2018 JetBrains s.r.o.
732
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
3 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
4 * Licensed under the Apache License, Version 2.0 (the "License");
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
5 * you may not use this file except in compliance with the License.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
6 * You may obtain a copy of the License at
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
7 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
8 * http://www.apache.org/licenses/LICENSE-2.0
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
9 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
10 * Unless required by applicable law or agreed to in writing, software
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
11 * distributed under the License is distributed on an "AS IS" BASIS,
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
13 * See the License for the specific language governing permissions and
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
14 * limitations under the License.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
15 */
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 678
diff changeset
16
678
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
17 package jetbrains.buildServer.buildTriggers.vcs.mercurial;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
18
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
19 import jetbrains.buildServer.vcs.Credentials;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
20 import jetbrains.buildServer.vcs.VcsException;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
21 import jetbrains.buildServer.vcs.VcsUrl;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
22 import org.testng.annotations.BeforeMethod;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
23 import org.testng.annotations.Test;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
24
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
25 import java.util.Map;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
26
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
27 import static jetbrains.buildServer.buildTriggers.vcs.mercurial.MercurialSupportBuilder.mercurialSupport;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
28 import static junit.framework.Assert.*;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
29
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
30 @Test
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
31 public class MercurialUrlSupportTest extends BaseMercurialTestCase {
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
32 private MercurialUrlSupport myUrlSupport;
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
33
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
34 @BeforeMethod
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
35 @Override
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
36 public void setUp() throws Exception {
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
37 super.setUp();
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
38
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
39 ServerPluginConfig myPluginConfig = new ServerPluginConfigBuilder()
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
40 .cachesDir(myTempFiles.createTempDir())
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
41 .build();
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
42 MercurialVcsSupport vcsSupport = mercurialSupport().withConfig(myPluginConfig).build();
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
43 myUrlSupport = new MercurialUrlSupport(vcsSupport);
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
44 }
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
45
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
46 public void maven_like_url() throws VcsException {
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
47 VcsUrl url = new VcsUrl("scm:hg:http://host/v3", new Credentials("user1", "pass1"));
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
48 Map<String, String> props = myUrlSupport.convertToVcsRootProperties(url);
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
49 assertNotNull(props);
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
50
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
51 assertEquals("http://host/v3", props.get(Constants.REPOSITORY_PROP));
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
52 assertEquals("user1", props.get(Constants.USERNAME));
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
53 assertEquals("pass1", props.get(Constants.PASSWORD));
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
54 }
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
55
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
56 public void http_protocol_mercurial_repo() throws VcsException {
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
57 VcsUrl url = new VcsUrl("http://hg.jetbrains.org/hg/mercurial/", new Credentials("user1", "pass1"));
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
58 Map<String, String> props = myUrlSupport.convertToVcsRootProperties(url);
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
59 assertNotNull(props);
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
60
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
61 assertEquals("http://hg.jetbrains.org/hg/mercurial/", props.get(Constants.REPOSITORY_PROP));
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
62 assertEquals("user1", props.get(Constants.USERNAME));
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
63 assertEquals("pass1", props.get(Constants.PASSWORD));
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
64 }
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
65
960
1aaf8dba4072 fixing TW-48788 for the case of SSH url
Pavel.Sher
parents: 732
diff changeset
66 public void ssh_protocol_mercurial_repo() throws VcsException {
1aaf8dba4072 fixing TW-48788 for the case of SSH url
Pavel.Sher
parents: 732
diff changeset
67 VcsUrl url = new VcsUrl("ssh://hg@bitbucket.org/user/repo");
1aaf8dba4072 fixing TW-48788 for the case of SSH url
Pavel.Sher
parents: 732
diff changeset
68 Map<String, String> props = myUrlSupport.convertToVcsRootProperties(url);
1aaf8dba4072 fixing TW-48788 for the case of SSH url
Pavel.Sher
parents: 732
diff changeset
69 assertNotNull(props);
1aaf8dba4072 fixing TW-48788 for the case of SSH url
Pavel.Sher
parents: 732
diff changeset
70
1aaf8dba4072 fixing TW-48788 for the case of SSH url
Pavel.Sher
parents: 732
diff changeset
71 assertEquals("ssh://hg@bitbucket.org/user/repo", props.get(Constants.REPOSITORY_PROP));
1aaf8dba4072 fixing TW-48788 for the case of SSH url
Pavel.Sher
parents: 732
diff changeset
72 }
1aaf8dba4072 fixing TW-48788 for the case of SSH url
Pavel.Sher
parents: 732
diff changeset
73
678
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
74 public void http_protocol_svn_repo() throws VcsException {
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
75 VcsUrl url = new VcsUrl("http://svn.jetbrains.org/teamcity/plugins/xml-tests-reporting/trunk");
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
76 Map<String, String> props = myUrlSupport.convertToVcsRootProperties(url);
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
77 assertNull(props);
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
78 }
fd0c1e91bd46 mercurial url support + some tests
Pavel Sher <pavel.sher@gmail.com>
parents:
diff changeset
79 }