Search in sources :

Example 6 with GitTestUtil

use of com.google.copybara.testing.git.GitTestUtil in project copybara by google.

the class GitHubEndpointTest method setup.

@Before
public void setup() throws Exception {
    workdir = Jimfs.newFileSystem().getPath("/");
    console = new TestingConsole();
    OptionsBuilder options = new OptionsBuilder();
    options.setConsole(console).setOutputRootToTmpDir();
    gitUtil = new GitTestUtil(options);
    gitUtil.mockRemoteGitRepos();
    dummyTrigger = new DummyTrigger();
    options.testingOptions.feedbackTrigger = dummyTrigger;
    options.testingOptions.checker = new DummyChecker(ImmutableSet.of("badword"));
    gitUtil.mockApi(eq("GET"), contains("master/status"), mockResponse("{\n" + "    state : 'failure',\n" + "    total_count : 2,\n" + "    sha : 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',\n" + "    statuses : [\n" + "       { state : 'failure', context: 'some/context'},\n" + "       { state : 'success', context: 'other/context'}\n" + "    ]\n" + "}"));
    gitUtil.mockApi(eq("GET"), contains("/commits/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"), mockResponse("{\n" + "    sha : 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',\n" + "    commit : {\n" + "       author: { name : 'theauthor', email: 'author@example.com'},\n" + "       committer: { name : 'thecommitter', email: 'committer@example.com'},\n" + "       message: \"This is a message\\n\\nWith body\\n\"\n" + "    },\n" + "    committer : { login : 'github_committer'},\n" + "    author : { login : 'github_author'}\n" + "}"));
    gitUtil.mockApi(eq("POST"), contains("/statuses/e59774"), mockResponse("{\n" + "    state : 'success',\n" + "    target_url : 'https://github.com/google/example',\n" + "    description : 'Observed foo',\n" + "    context : 'test'\n" + "}"));
    gitUtil.mockApi(anyString(), contains("/git/refs/heads/test"), mockResponse("{\n" + "    ref : 'refs/heads/test',\n" + "    url : 'https://github.com/google/example/git/refs/heads/test',\n" + "    object : { \n" + "       type : 'commit',\n" + "       sha : 'e597746de9c1704e648ddc3ffa0d2096b146d600', \n" + "       url :" + " 'https://github.com/google/example/git/commits/e597746de9c1704e648ddc3ffa0d2096b146d600'\n" + "   } \n" + "}"));
    gitUtil.mockApi(eq("GET"), contains("git/refs?per_page=100"), mockResponse("[{\n" + "    ref : 'refs/heads/test',\n" + "    url : 'https://github.com/google/example/git/refs/heads/test',\n" + "    object : { \n" + "       type : 'commit',\n" + "       sha : 'e597746de9c1704e648ddc3ffa0d2096b146d600', \n" + "       url :" + " 'https://github.com/google/example/git/commits/e597746de9c1704e648ddc3ffa0d2096b146d600'\n" + "   } \n" + "}]"));
    gitUtil.mockApi(eq("GET"), contains("commits/e597746de9c1704e648ddc3ffa0d2096b146d610/check-runs"), mockResponse("{\n" + "  total_count: 1,\n" + "  check_runs: [\n" + "    {\n" + "      id: 4,\n" + "      details_url: 'https://example.com',\n" + "      status: 'completed',\n" + "      conclusion: 'neutral',\n" + "      name: 'mighty_readme',\n" + "      output: {\n" + "        title: 'Mighty Readme report',\n" + "        summary: 'test_summary',\n" + "        text: 'test_text'\n" + "      },\n" + "      app: {\n" + "        id: 1,\n" + "        slug: 'octoapp',\n" + "        name: 'Octocat App'\n" + "      }\n" + "    }\n" + "  ]\n" + "}"));
    Path credentialsFile = Files.createTempFile("credentials", "test");
    Files.write(credentialsFile, "https://user:SECRET@github.com".getBytes(UTF_8));
    options.git.credentialHelperStorePath = credentialsFile.toString();
    skylark = new SkylarkTestExecutor(options);
}
Also used : Path(java.nio.file.Path) TestingConsole(com.google.copybara.util.console.testing.TestingConsole) DummyTrigger(com.google.copybara.testing.DummyTrigger) GitTestUtil(com.google.copybara.testing.git.GitTestUtil) OptionsBuilder(com.google.copybara.testing.OptionsBuilder) DummyChecker(com.google.copybara.testing.DummyChecker) SkylarkTestExecutor(com.google.copybara.testing.SkylarkTestExecutor) Before(org.junit.Before)

Example 7 with GitTestUtil

use of com.google.copybara.testing.git.GitTestUtil in project copybara by google.

the class GerritEndpointTest method setup.

@Before
public void setup() throws Exception {
    workdir = Jimfs.newFileSystem().getPath("/");
    TestingConsole console = new TestingConsole();
    OptionsBuilder options = new OptionsBuilder();
    options.setConsole(console).setOutputRootToTmpDir();
    dummyTrigger = new DummyTrigger();
    options.testingOptions.feedbackTrigger = dummyTrigger;
    options.testingOptions.checker = new DummyChecker(ImmutableSet.of("badword"));
    gitUtil = new GitTestUtil(options);
    Path credentialsFile = Files.createTempFile("credentials", "test");
    Files.write(credentialsFile, BASE_URL.getBytes(UTF_8));
    GitRepository repo = newBareRepo(Files.createTempDirectory("test_repo"), getGitEnv(), /*verbose=*/
    true, DEFAULT_TIMEOUT, /*noVerify=*/
    false).init().withCredentialHelper("store --file=" + credentialsFile);
    gitUtil.mockRemoteGitRepos(new Validator(), repo);
    url = BASE_URL + "/foo/bar";
    options.general.starlarkMode = "STRICT";
    skylark = new SkylarkTestExecutor(options);
}
Also used : Path(java.nio.file.Path) TestingConsole(com.google.copybara.util.console.testing.TestingConsole) DummyTrigger(com.google.copybara.testing.DummyTrigger) GitTestUtil(com.google.copybara.testing.git.GitTestUtil) OptionsBuilder(com.google.copybara.testing.OptionsBuilder) DummyChecker(com.google.copybara.testing.DummyChecker) Validator(com.google.copybara.testing.git.GitTestUtil.Validator) SkylarkTestExecutor(com.google.copybara.testing.SkylarkTestExecutor) Before(org.junit.Before)

Example 8 with GitTestUtil

use of com.google.copybara.testing.git.GitTestUtil in project copybara by google.

the class GitHubDestinationTest method setup.

@Before
public void setup() throws Exception {
    console = new TestingConsole();
    options = new OptionsBuilder().setConsole(console).setOutputRootToTmpDir();
    options.testingOptions.checker = new DummyChecker(ImmutableSet.of("bad_word"));
    workdir = Files.createTempDirectory("workdir");
    destinationFiles = Glob.createGlob(ImmutableList.of("**"));
    gitUtil = new GitTestUtil(options);
    gitUtil.mockRemoteGitRepos(new CompleteRefValidator());
    remote = gitUtil.mockRemoteRepo("github.com/foo");
    primaryBranch = remote.getPrimaryBranch();
    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";
    url = "https://github.com/foo";
    force = false;
    fetch = primaryBranch;
    push = primaryBranch;
    skylark = new SkylarkTestExecutor(options);
}
Also used : Path(java.nio.file.Path) TestingConsole(com.google.copybara.util.console.testing.TestingConsole) GitTestUtil(com.google.copybara.testing.git.GitTestUtil) OptionsBuilder(com.google.copybara.testing.OptionsBuilder) DummyChecker(com.google.copybara.testing.DummyChecker) CompleteRefValidator(com.google.copybara.testing.git.GitTestUtil.CompleteRefValidator) SkylarkTestExecutor(com.google.copybara.testing.SkylarkTestExecutor) Before(org.junit.Before)

Example 9 with GitTestUtil

use of com.google.copybara.testing.git.GitTestUtil in project copybara by google.

the class GitHubPrOriginTest method setup.

@Before
public void setup() throws Exception {
    repoGitDir = Files.createTempDirectory("GitHubPrDestinationTest-repoGitDir");
    workdir = Files.createTempDirectory("workdir");
    git("init", "--bare", repoGitDir.toString());
    console = new TestingConsole();
    options = new OptionsBuilder().setConsole(console).setOutputRootToTmpDir();
    gitUtil = new GitTestUtil(options);
    gitUtil.mockRemoteGitRepos(new CompleteRefValidator());
    Path credentialsFile = Files.createTempFile("credentials", "test");
    Files.write(credentialsFile, "https://user:SECRET@github.com".getBytes(UTF_8));
    options.git.credentialHelperStorePath = credentialsFile.toString();
    skylark = new SkylarkTestExecutor(options);
}
Also used : Path(java.nio.file.Path) TestingConsole(com.google.copybara.util.console.testing.TestingConsole) GitTestUtil(com.google.copybara.testing.git.GitTestUtil) OptionsBuilder(com.google.copybara.testing.OptionsBuilder) CompleteRefValidator(com.google.copybara.testing.git.GitTestUtil.CompleteRefValidator) SkylarkTestExecutor(com.google.copybara.testing.SkylarkTestExecutor) Before(org.junit.Before)

Aggregations

SkylarkTestExecutor (com.google.copybara.testing.SkylarkTestExecutor)9 GitTestUtil (com.google.copybara.testing.git.GitTestUtil)9 OptionsBuilder (com.google.copybara.testing.OptionsBuilder)8 TestingConsole (com.google.copybara.util.console.testing.TestingConsole)8 Before (org.junit.Before)8 Path (java.nio.file.Path)7 DummyChecker (com.google.copybara.testing.DummyChecker)4 WriterContext (com.google.copybara.WriterContext)2 DummyRevision (com.google.copybara.testing.DummyRevision)2 CompleteRefValidator (com.google.copybara.testing.git.GitTestUtil.CompleteRefValidator)2 LowLevelHttpRequest (com.google.api.client.http.LowLevelHttpRequest)1 Joiner (com.google.common.base.Joiner)1 Strings (com.google.common.base.Strings)1 ImmutableList (com.google.common.collect.ImmutableList)1 ImmutableSet (com.google.common.collect.ImmutableSet)1 ImmutableSetMultimap (com.google.common.collect.ImmutableSetMultimap)1 Iterables (com.google.common.collect.Iterables)1 Hashing (com.google.common.hash.Hashing)1 Truth.assertThat (com.google.common.truth.Truth.assertThat)1 Truth.assertWithMessage (com.google.common.truth.Truth.assertWithMessage)1