Mercurial > hg > mercurial
view mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CloneCommandTest.java @ 977:38adef4f1b8f Indore-2017.2.x
Update copyright
author | pavel.sher |
---|---|
date | Mon, 22 Jan 2018 11:40:45 +0100 |
parents | 31a1aca3305c |
children |
line wrap: on
line source
/* * Copyright 2000-2018 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package jetbrains.buildServer.buildTriggers.vcs.mercurial.command; import jetbrains.buildServer.BaseTestCase; import jetbrains.buildServer.TempFiles; import jetbrains.buildServer.buildTriggers.vcs.mercurial.*; import jetbrains.buildServer.vcs.VcsException; import jetbrains.buildServer.vcs.impl.VcsRootImpl; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; import java.io.File; import java.io.IOException; import static jetbrains.buildServer.buildTriggers.vcs.mercurial.Util.copyRepository; /** * @author dmitry.neverov */ @Test public class CloneCommandTest extends BaseTestCase { protected TempFiles myTempFiles; @Override @BeforeMethod public void setUp() throws Exception { myTempFiles = new TempFiles(); } @AfterMethod public void tearDown() throws Exception { myTempFiles.cleanup(); } public void clone_should_be_made_to_its_destination_dir() throws IOException, VcsException { File repository = copyRepository(myTempFiles, new File("mercurial-tests/testData/rep1").getAbsolutePath()); VcsRootImpl root = new VcsRootImpl(1, "rootForTest"); root.addProperty(Constants.REPOSITORY_PROP, repository.getAbsolutePath()); root.addProperty(Constants.HG_COMMAND_PATH_PROP, Util.getHgPath()); File workingDir = myTempFiles.createTempDir(); ServerPluginConfig config = new ServerPluginConfigBuilder().cachesDir(myTempFiles.createTempDir()).build(); ServerHgPathProvider hgPathProvider = new ServerHgPathProvider(config); HgVcsRoot hgRoot = new HgVcsRoot(root); hgRoot.setCustomWorkingDir(workingDir); new CloneCommand(new TestCommandSettingsFactory().create(), hgPathProvider.getHgPath(hgRoot), workingDir, hgRoot.getAuthSettings()).fromRepository(hgRoot.getRepository()).call(); String[] files = new String[] {".hg", "dir1", "dir with space", "file.txt"}; for (String f : files) { assertTrue(new File(workingDir, f).exists()); } } }