diff --git a/src/main/java/pl/project13/maven/git/GitDirLocator.java b/src/main/java/pl/project13/maven/git/GitDirLocator.java index 4926ab61..789aa1c1 100644 --- a/src/main/java/pl/project13/maven/git/GitDirLocator.java +++ b/src/main/java/pl/project13/maven/git/GitDirLocator.java @@ -135,13 +135,14 @@ private File processGitDirFile(@Nonnull File file) { } // All seems ok so return the "gitdir" value read from the file. - File gitDir = resolveWorktree(new File(parts[1])); + String extractFromConfig = parts[1]; + File gitDir = resolveWorktree(new File(extractFromConfig)); if (gitDir.isAbsolute()) { // gitdir value is an absolute path. Return as-is return gitDir; } else { // gitdir value is relative. - return new File(file.getParentFile(), parts[1]); + return new File(file.getParentFile(), extractFromConfig); } } catch (IOException e) { return null; @@ -149,8 +150,13 @@ private File processGitDirFile(@Nonnull File file) { } /** - * If the file looks like the location of a worktree, return the .git folder of the git repository - * of the worktree. If not, return the file as is. + * Attempts to resolve the actual location of the .git folder for a given + * worktree. + * For example for a worktree like {@code a/.git/worktrees/X} structure would + * return {@code a/.git}. + * + * If the conditions for a git worktree like file structure are met simply return the provided + * argument as is. */ static File resolveWorktree(File fileLocation) { Path parent = fileLocation.toPath().getParent(); diff --git a/src/test/java/pl/project13/maven/git/AvailableGitTestRepo.java b/src/test/java/pl/project13/maven/git/AvailableGitTestRepo.java index b994b20d..f629ef31 100644 --- a/src/test/java/pl/project13/maven/git/AvailableGitTestRepo.java +++ b/src/test/java/pl/project13/maven/git/AvailableGitTestRepo.java @@ -54,7 +54,42 @@ public enum AvailableGitTestRepo { */ WITH_COMMIT_THAT_HAS_TWO_TAGS("src/test/resources/_git_with_commit_that_has_two_tags"), ON_A_TAG_DIRTY("src/test/resources/_git_on_a_tag_dirty"), + + /** + *
+   * * 01ed93c - (11 years ago) any commit, just a readme - Konrad Malawski (HEAD -> master)
+   * * 4ce26eb - (11 years ago) my submodules, yay - Konrad Malawski
+   * 
+ *
+   * $ git submodule status
+   * -9fd4b69a5ca09b60884d4f8f49ce16ea071077be module1
+   * -9fd4b69a5ca09b60884d4f8f49ce16ea071077be module2
+   * -9fd4b69a5ca09b60884d4f8f49ce16ea071077be module3
+   * -9fd4b69a5ca09b60884d4f8f49ce16ea071077be module4
+   *
+   * $ git config --file .gitmodules --get-regexp '\.url$'
+   * submodule.module1.url /tmp/module1
+   * submodule.module2.url /tmp/module1
+   * submodule.module3.url /tmp/module1
+   * submodule.module4.url /tmp/module1
+   * 
+ */ WITH_SUBMODULES("src/test/resources/_git_with_submodules"), + + /** + *
+   * 6455ccd - (3 minutes ago) init (HEAD -> master)
+   * 
+ *
+   * $ git submodule status
+   * 945bfe60e8a3eff168e915c7ba5bac37c9d0165b remote-module (heads/empty-branch)
+   *
+   * $ git submodule foreach --recursive git remote get-url origin
+   * Entering 'remote-module'
+   * git@github.com:git-commit-id/git-test-resources.git
+   * 
+ */ + WITH_REMOTE_SUBMODULES("src/test/resources/_git_with_remote_submodules"), /** * * diff --git a/src/test/java/pl/project13/maven/git/BigDiffTest.java b/src/test/java/pl/project13/maven/git/BigDiffTest.java index b06d2318..bdfaeb93 100644 --- a/src/test/java/pl/project13/maven/git/BigDiffTest.java +++ b/src/test/java/pl/project13/maven/git/BigDiffTest.java @@ -86,23 +86,6 @@ public void bigDiff() throws Exception { assertGitPropertiesPresentInProject(targetProject.getProperties()); } - private void assertGitPropertiesPresentInProject(final Properties properties) { - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.host")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.branch")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.abbrev")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.describe")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.short")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.remote.origin.url")); - } - private GitDescribeConfig createGitDescribeConfig( final boolean forceLongFormat, final int abbrev) { final GitDescribeConfig gitDescribeConfig = new GitDescribeConfig(); diff --git a/src/test/java/pl/project13/maven/git/GitCommitIdMojoIntegrationTest.java b/src/test/java/pl/project13/maven/git/GitCommitIdMojoIntegrationTest.java index 28d93d10..ee1a0608 100644 --- a/src/test/java/pl/project13/maven/git/GitCommitIdMojoIntegrationTest.java +++ b/src/test/java/pl/project13/maven/git/GitCommitIdMojoIntegrationTest.java @@ -18,7 +18,6 @@ package pl.project13.maven.git; -import static java.util.Arrays.asList; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.entry; import static org.mockito.Mockito.when; @@ -26,7 +25,6 @@ import java.io.File; import java.text.SimpleDateFormat; import java.util.Arrays; -import java.util.Collection; import java.util.Collections; import java.util.Date; import java.util.HashMap; @@ -49,17 +47,6 @@ @RunWith(JUnitParamsRunner.class) public class GitCommitIdMojoIntegrationTest extends GitIntegrationTest { - private static final boolean UseJGit = false; - private static final boolean UseNativeGit = true; - - public static Collection useNativeGit() { - return asList(UseJGit, UseNativeGit); - } - - public static Collection useDirty() { - return asList(true, false); - } - @Test @Parameters(method = "useNativeGit") public void shouldIncludeExpectedProperties(boolean useNativeGit) throws Exception { @@ -78,19 +65,7 @@ public void shouldIncludeExpectedProperties(boolean useNativeGit) throws Excepti // then Properties properties = targetProject.getProperties(); - - assertThat(properties).satisfies(new ContainsKeyCondition("git.branch")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.dirty")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.abbrev")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.short")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.remote.origin.url")); + assertGitPropertiesPresentInProject(properties); } @Test @@ -1731,28 +1706,4 @@ private GitDescribeConfig createGitDescribeConfig(boolean forceLongFormat, int a gitDescribeConfig.setDirty(""); return gitDescribeConfig; } - - private void assertPropertyPresentAndEqual(Properties properties, String key, String expected) { - assertThat(properties.stringPropertyNames()).contains(key); - assertThat(properties.getProperty(key)).isEqualTo(expected); - } - - private void assertGitPropertiesPresentInProject(Properties properties) { - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.host")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.branch")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.abbrev")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.describe")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.short")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.remote.origin.url")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.closest.tag.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.closest.tag.commit.count")); - } } diff --git a/src/test/java/pl/project13/maven/git/GitDirLocatorTest.java b/src/test/java/pl/project13/maven/git/GitDirLocatorTest.java index e4ac9e12..98dccdbb 100644 --- a/src/test/java/pl/project13/maven/git/GitDirLocatorTest.java +++ b/src/test/java/pl/project13/maven/git/GitDirLocatorTest.java @@ -25,7 +25,9 @@ import java.util.Collections; import java.util.List; import org.apache.maven.project.MavenProject; +import org.junit.Rule; import org.junit.Test; +import org.junit.rules.TemporaryFolder; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.junit.MockitoJUnitRunner; @@ -37,18 +39,20 @@ public class GitDirLocatorTest { List reactorProjects = Collections.emptyList(); + @Rule + public TemporaryFolder folder = new TemporaryFolder(); + @Test public void shouldUseTheManuallySpecifiedDirectory() throws Exception { // given - File dotGitDir = Files.createTempDirectory("temp").toFile(); + File dotGitDir = folder.newFolder("temp"); try { - // when GitDirLocator locator = new GitDirLocator(project, reactorProjects); File foundDirectory = locator.lookupGitDirectory(dotGitDir); // then - assert foundDirectory != null; + assertThat(foundDirectory).isNotNull(); assertThat(foundDirectory.getAbsolutePath()).isEqualTo(dotGitDir.getAbsolutePath()); } finally { if (!dotGitDir.delete()) { @@ -57,12 +61,66 @@ public void shouldUseTheManuallySpecifiedDirectory() throws Exception { } } + @Test + public void shouldResolveRelativeSubmodule() throws Exception { + // given + folder.newFolder("main-project"); + folder.newFolder("main-project", ".git", "modules", "sub-module"); + folder.newFolder("main-project", "sub-module"); + + // and a .git dir in submodule that points to the main's project .git/modules/submodule + File dotGitDir = folder.getRoot().toPath() + .resolve("main-project") + .resolve("sub-module") + .resolve(".git") + .toFile(); + Files.write( + dotGitDir.toPath(), + "gitdir: ../.git/modules/sub-module".getBytes() + ); + + try { + // when + GitDirLocator locator = new GitDirLocator(project, reactorProjects); + File foundDirectory = locator.lookupGitDirectory(dotGitDir); + + // then + assertThat(foundDirectory).isNotNull(); + assertThat( + foundDirectory.getCanonicalFile() + ).isEqualTo( + folder.getRoot().toPath() + .resolve("main-project") + .resolve(".git") + .resolve("modules") + .resolve("sub-module") + .toFile() + ); + } finally { + if (!dotGitDir.delete()) { + dotGitDir.deleteOnExit(); + } + } + } + @Test public void testWorktreeResolution() { - String[] noopCases = {"", "a", "a/b", ".git/worktrees", ".git/worktrees/", "a.git/worktrees/b"}; + // tests to ensure we do not try to modify things that should not be modified + String[] noopCases = { + "", + "a", + "a/b", + ".git/worktrees", + ".git/worktrees/", + "a.git/worktrees/b", + ".git/modules", + ".git/modules/", + "a.git/modules/b", + }; for (String path : noopCases) { assertThat(GitDirLocator.resolveWorktree(new File(path))).isEqualTo(new File(path)); } + // tests that worktree resolution works assertThat(GitDirLocator.resolveWorktree(new File("a/.git/worktrees/b"))) .isEqualTo(new File("a/.git")); assertThat(GitDirLocator.resolveWorktree(new File("/a/.git/worktrees/b"))) diff --git a/src/test/java/pl/project13/maven/git/GitIntegrationTest.java b/src/test/java/pl/project13/maven/git/GitIntegrationTest.java index 0beca07d..8452307b 100644 --- a/src/test/java/pl/project13/maven/git/GitIntegrationTest.java +++ b/src/test/java/pl/project13/maven/git/GitIntegrationTest.java @@ -18,6 +18,8 @@ package pl.project13.maven.git; +import static java.util.Arrays.asList; +import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; @@ -25,6 +27,7 @@ import java.io.File; import java.io.IOException; import java.util.ArrayList; +import java.util.Collection; import java.util.List; import java.util.Optional; import java.util.Properties; @@ -47,6 +50,13 @@ public abstract class GitIntegrationTest { private static final String SANDBOX_DIR = "target" + File.separator + "sandbox" + File.separator; protected static final String evaluateOnCommit = "HEAD"; + private static final boolean UseJGit = false; + private static final boolean UseNativeGit = true; + + public static Collection useNativeGit() { + return asList(UseJGit, UseNativeGit); + } + /** Sandbox directory with unique name for current test. */ private String currSandbox; @@ -156,4 +166,47 @@ private static List getReactorProjects(@Nonnull MavenProject proje } return reactorProjects; } + + public static void assertPropertyPresentAndEqual( + Properties properties, String key, String expected) { + assertThat(properties.stringPropertyNames()).contains(key); + assertThat(properties.getProperty(key)).isEqualTo(expected); + } + + /** + * Ensures that the provided properties contain the properties the plugin can generate. + * See also {@link pl.project13.core.GitCommitPropertyConstant} + * + * @param properties The properties that should be verified + */ + public static void assertGitPropertiesPresentInProject(Properties properties) { + assertThat(properties).satisfies(new ContainsKeyCondition("git.branch")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.local.branch.ahead")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.local.branch.behind")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.dirty")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.full")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.abbrev")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.describe")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.describe-short")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.name")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.email")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.build.time")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.build.version")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.build.host")); + // assertThat(properties).satisfies(new ContainsKeyCondition("git.build.number")); + // assertThat(properties).satisfies(new ContainsKeyCondition("git.build.number.unique")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.name")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.email")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.full")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.short")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.time")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.author.time")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.committer.time")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.remote.origin.url")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.tags")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.closest.tag.name")); + // assertThat(properties).satisfies(new ContainsKeyCondition("git.tag")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.closest.tag.commit.count")); + assertThat(properties).satisfies(new ContainsKeyCondition("git.total.commit.count")); + } } diff --git a/src/test/java/pl/project13/maven/git/GitPropertiesFileTest.java b/src/test/java/pl/project13/maven/git/GitPropertiesFileTest.java index bc463ad8..f0c0af15 100644 --- a/src/test/java/pl/project13/maven/git/GitPropertiesFileTest.java +++ b/src/test/java/pl/project13/maven/git/GitPropertiesFileTest.java @@ -108,25 +108,4 @@ public void shouldConformPropertiesFileWhenSpecialCharactersInValueString(boolea } } } - - private void assertGitPropertiesPresentInProject(Properties properties) { - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.host")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.branch")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.abbrev")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.describe")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.short")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.committer.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.author.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.remote.origin.url")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.closest.tag.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.closest.tag.commit.count")); - } } diff --git a/src/test/java/pl/project13/maven/git/GitSubmodulesTest.java b/src/test/java/pl/project13/maven/git/GitSubmodulesTest.java index b2990a6e..3fb15306 100644 --- a/src/test/java/pl/project13/maven/git/GitSubmodulesTest.java +++ b/src/test/java/pl/project13/maven/git/GitSubmodulesTest.java @@ -18,22 +18,23 @@ package pl.project13.maven.git; -import static org.assertj.core.api.Assertions.assertThat; - -import java.io.File; -import java.util.Properties; -import javax.annotation.Nonnull; +import java.nio.file.Files; +import junitparams.JUnitParamsRunner; +import junitparams.Parameters; import org.apache.maven.project.MavenProject; import org.junit.Test; -import pl.project13.core.jgit.DescribeCommand; +import org.junit.runner.RunWith; /** * Testcases to verify that the git-commit-id-plugin works properly. */ +@RunWith(JUnitParamsRunner.class) public class GitSubmodulesTest extends GitIntegrationTest { @Test - public void shouldResolvePropertiesOnDefaultSettingsForNonPomProject() throws Exception { + @Parameters(method = "useNativeGit") + public void shouldResolvePropertiesOnDefaultSettingsForNonPomProject( + boolean useNativeGit) throws Exception { mavenSandbox .withParentProject("my-jar-project", "jar") .withGitRepoInParent(AvailableGitTestRepo.WITH_SUBMODULES) @@ -42,6 +43,7 @@ public void shouldResolvePropertiesOnDefaultSettingsForNonPomProject() throws Ex MavenProject targetProject = mavenSandbox.getChildProject(); setProjectToExecuteMojoIn(targetProject); + mojo.useNativeGit = useNativeGit; // when mojo.execute(); @@ -50,24 +52,33 @@ public void shouldResolvePropertiesOnDefaultSettingsForNonPomProject() throws Ex assertGitPropertiesPresentInProject(targetProject.getProperties()); } - public void setProjectToExecuteMojoIn(@Nonnull MavenProject project) { - mojo.project = project; - mojo.dotGitDirectory = new File(project.getBasedir(), ".git"); - } + @Test + @Parameters(method = "useNativeGit") + public void shouldGeneratePropertiesWithSubmodules(boolean useNativeGit) throws Exception { + // given + mavenSandbox + .withParentProject("my-pom-project", "pom") + .withGitRepoInParent(AvailableGitTestRepo.WITH_REMOTE_SUBMODULES) + .withChildProject("remote-module", "jar") + .create(); + MavenProject targetProject = mavenSandbox.getChildProject(); + setProjectToExecuteMojoIn(targetProject); - private void assertGitPropertiesPresentInProject(Properties properties) { - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.host")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.branch")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.abbrev")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.short")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.remote.origin.url")); + // create a relative pointer to trigger the relative path logic in + // GitDirLocator#lookupGitDirectory + // makes the dotGitDirectory look like "my-pom-project/.git/modules/remote-module" + Files.write( + mavenSandbox.getChildProject().getBasedir().toPath().resolve(".git"), + "gitdir: ../.git/modules/remote-module".getBytes() + ); + + mojo.useNativeGit = useNativeGit; + + // when + mojo.execute(); + + // then + assertPropertyPresentAndEqual( + targetProject.getProperties(), "git.commit.id.abbrev", "945bfe6"); } } diff --git a/src/test/java/pl/project13/maven/git/NaivePerformanceTest.java b/src/test/java/pl/project13/maven/git/NaivePerformanceTest.java index e9de42ed..802d62e9 100644 --- a/src/test/java/pl/project13/maven/git/NaivePerformanceTest.java +++ b/src/test/java/pl/project13/maven/git/NaivePerformanceTest.java @@ -94,23 +94,4 @@ private GitDescribeConfig createGitDescribeConfig(boolean forceLongFormat, int a gitDescribeConfig.setAbbrev(abbrev); return gitDescribeConfig; } - - private void assertGitPropertiesPresentInProject(Properties properties) { - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.host")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.branch")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.abbrev")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.id.describe")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.build.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.name")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.user.email")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.full")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.message.short")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.author.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.commit.committer.time")); - assertThat(properties).satisfies(new ContainsKeyCondition("git.remote.origin.url")); - } } diff --git a/src/test/java/pl/project13/maven/git/NativeAndJGitProviderTest.java b/src/test/java/pl/project13/maven/git/NativeAndJGitProviderTest.java index 215c5439..4c35a98c 100644 --- a/src/test/java/pl/project13/maven/git/NativeAndJGitProviderTest.java +++ b/src/test/java/pl/project13/maven/git/NativeAndJGitProviderTest.java @@ -186,10 +186,4 @@ private Properties createCopy(Properties orig) { return p; } - - private void assertGitPropertiesPresentInProject(Properties properties) { - for (String key : GIT_KEYS) { - assertThat(properties).satisfies(new ContainsKeyCondition(key)); - } - } } diff --git a/src/test/resources b/src/test/resources index f2d84eea..0e549504 160000 --- a/src/test/resources +++ b/src/test/resources @@ -1 +1 @@ -Subproject commit f2d84eeaa87c2a28e482bbd64eae47402a08bff4 +Subproject commit 0e549504984403f5e9a29b9c104d027a705d9963