Files
gerrit/gerrit-acceptance-framework/src/test/java
David Ostrovsky 8df8af2572 Manually bind plugin guice modules in gerrit Guice universe
Short circuit the plugin loading phase from the unit tests by passing
the module names from the manifest file.

This allows us to avoid building and deploying the plugin JAR from
within build tool chain.

To use the simplified plugin bootstrap tests, plugin test class must
be inherited from the LightweightPluginDaemonTest class and must be
annotated with @TestPlugin annotation:

  @TestPlugin(
    name = "cookbook",
    sysModule = "com.googlesource.gerrit.plugins.cookbook.Module",
    httpModule = "com.googlesource.gerrit.plugins.cookbook.HttpModule",
    sshModule = "com.googlesource.gerrit.plugins.cookbook.SshModule"
  )
  public class CookbookIT extends LightweightPluginDaemonTest {
    @Test
    public void revisionTest() throws Exception {
      createChange();
      RestResponse response =
          adminRestSession.post("/changes/1/revisions/1/cookbook~hello-revision");
      assertThat(response.getEntityContent())
          .contains("Hello admin from change 1, patch set 1!");
    }
  }

Inspired-By: Dave Borowitz <dborowitz@google.com>
Change-Id: I689bb71413ecfbbf99f72730b0d2617bf526d9dd
2016-12-08 12:14:48 +00:00
..