use of com.google.copybara.testing.OptionsBuilder in project copybara by google.
the class GitOriginSubmodulesTest method setup.
@Before
public void setup() throws Exception {
OptionsBuilder options = new OptionsBuilder().setConsole(new TestingConsole()).setOutputRootToTmpDir();
skylark = new SkylarkTestExecutor(options, GitModule.class);
// Pass custom HOME directory so that we run an hermetic test and we
// can add custom configuration to $HOME/.gitconfig.
Path userHomeForTest = Files.createTempDirectory("home");
options.setHomeDir(userHomeForTest.toString());
checkoutDir = Files.createTempDirectory("checkout");
}
use of com.google.copybara.testing.OptionsBuilder in project copybara by google.
the class GitOriginTest method setup.
@Before
public void setup() throws Exception {
options = new OptionsBuilder();
console = new TestingConsole();
options = new OptionsBuilder().setConsole(console).setOutputRootToTmpDir();
skylark = new SkylarkTestExecutor(options, GitModule.class);
// Pass custom HOME directory so that we run an hermetic test and we
// can add custom configuration to $HOME/.gitconfig.
Path userHomeForTest = Files.createTempDirectory("home");
options.setEnvironment(GitTestUtil.getGitEnv());
options.setHomeDir(userHomeForTest.toString());
createTestRepo(Files.createTempDirectory("remote"));
checkoutDir = Files.createTempDirectory("checkout");
url = "file://" + remote.toFile().getAbsolutePath();
ref = "other";
moreOriginArgs = "";
origin = origin();
Files.write(remote.resolve("test.txt"), "some content".getBytes(UTF_8));
repo.add().files("test.txt").run();
git("commit", "-m", "first file", "--date", commitTime);
firstCommitRef = repo.parseRef("HEAD");
originFiles = Glob.ALL_FILES;
}
use of com.google.copybara.testing.OptionsBuilder in project copybara by google.
the class GitRepoTypeTest method setup.
@Before
public void setup() throws Exception {
repoGitDir = Files.createTempDirectory("testRepo");
fileRepoDir = Files.createTempDirectory("fileRepo");
// We mock by default to avoid accidental network calls.
testRepo = new GitRepository(repoGitDir, null, /*verbose=*/
true, getGitEnv()) {
@Override
public GitRevision fetchSingleRef(String url, String ref) throws RepoException {
interceptedFetches.add(new String[] { url, ref });
return new GitRevision(this, Strings.repeat("0", 40));
}
};
testRepo.init();
prepareFileRepo();
console = new TestingConsole();
generalOptions = new OptionsBuilder().setConsole(console).build().get(GeneralOptions.class);
}
use of com.google.copybara.testing.OptionsBuilder in project copybara by google.
the class GithubPrDestinationTest method setup.
@Before
public void setup() throws Exception {
repoGitDir = Files.createTempDirectory("GithubPrDestinationTest-repoGitDir");
workdir = Files.createTempDirectory("workdir");
localHub = Files.createTempDirectory("localHub");
git("init", "--bare", repoGitDir.toString());
console = new TestingConsole();
options = new OptionsBuilder().setConsole(console).setOutputRootToTmpDir();
options.git = new TestGitOptions(localHub, () -> GithubPrDestinationTest.this.options.general);
options.github = new GithubOptions(() -> options.general, options.git) {
@Override
public GithubApi getApi(String project) throws RepoException {
assertThat(project).isEqualTo(expectedProject);
return super.getApi(project);
}
@Override
protected HttpTransport getHttpTransport() {
return gitApiMockHttpTransport;
}
};
Path credentialsFile = Files.createTempFile("credentials", "test");
Files.write(credentialsFile, "https://user:SECRET@github.com".getBytes(UTF_8));
options.git.credentialHelperStorePath = credentialsFile.toString();
options.gitDestination = new GitDestinationOptions(() -> options.general, options.git);
options.gitDestination.committerEmail = "commiter@email";
options.gitDestination.committerName = "Bara Kopi";
skylark = new SkylarkTestExecutor(options, GitModule.class);
}
use of com.google.copybara.testing.OptionsBuilder in project copybara by google.
the class GerritDestinationTest method setup.
@Before
public void setup() throws Exception {
workdir = Files.createTempDirectory("workdir");
console = new TestingConsole();
options = new OptionsBuilder().setConsole(console).setOutputRootToTmpDir();
urlMapper = Files.createTempDirectory("url_mapper");
options.git = new TestGitOptions(urlMapper, () -> options.general);
options.gerrit = new GerritOptions(() -> options.general, options.git) {
@Override
protected GerritApiTransportImpl getGerritApiTransport(URI uri) throws RepoException {
return new GerritApiTransportImpl(repo(), uri, gitApiMockHttpTransport);
}
};
options.gitDestination = new GitDestinationOptions(() -> options.general, options.git);
options.gitDestination.committerEmail = "commiter@email";
options.gitDestination.committerName = "Bara Kopi";
excludedDestinationPaths = ImmutableList.of();
repoGitDir = localGerritRepo("localhost:33333/foo/bar").getGitDir();
url = "https://localhost:33333/foo/bar";
repo().init();
skylark = new SkylarkTestExecutor(options, GitModule.class);
gitApiMockHttpTransport = new GitApiMockHttpTransport() {
@Override
protected byte[] getContent(String method, String url, MockLowLevelHttpRequest request) throws IOException {
if (method.equals("GET") && url.startsWith("https://localhost:33333/changes/")) {
String result = "[" + "{" + " change_id : \"" + changeIdFromRequest(url) + "\"," + " status : \"NEW\"" + "}]";
return result.getBytes(UTF_8);
}
throw new IllegalArgumentException(method + " " + url);
}
};
}
Aggregations