This is an automated email from the ASF dual-hosted git repository. ningjiang pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/servicecomb-toolkit.git
commit 8138113d4ceacf84f0e8cf8b8fb5ce5f42f43470 Author: MabinGo <[email protected]> AuthorDate: Sun Jul 7 16:55:37 2019 +0800 SCB-1351 Some issues about using toolkit plugin fix generating doc and UT Signed-off-by: MabinGo <[email protected]> --- .../toolkit/plugin/GenerateContractsDocMojo.java | 2 +- .../java/plugin/GenerateContractsDocMojoTest.java | 27 ++++++++++++++-------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/toolkit-maven-plugin/src/main/java/org/apache/servicecomb/toolkit/plugin/GenerateContractsDocMojo.java b/toolkit-maven-plugin/src/main/java/org/apache/servicecomb/toolkit/plugin/GenerateContractsDocMojo.java index af2cc8d..84ba37d 100755 --- a/toolkit-maven-plugin/src/main/java/org/apache/servicecomb/toolkit/plugin/GenerateContractsDocMojo.java +++ b/toolkit-maven-plugin/src/main/java/org/apache/servicecomb/toolkit/plugin/GenerateContractsDocMojo.java @@ -73,7 +73,7 @@ public class GenerateContractsDocMojo extends AbstractMojo { if (!file.exists()) { throw new MojoFailureException("contract location is not exists"); } - if (Objects.requireNonNull(file.list()).length == 0) { + if (Objects.requireNonNull(file.listFiles()).length == 0) { throw new MojoFailureException(contractLocation + " has no contract files"); } diff --git a/toolkit-maven-plugin/src/test/java/plugin/GenerateContractsDocMojoTest.java b/toolkit-maven-plugin/src/test/java/plugin/GenerateContractsDocMojoTest.java index 7992565..a6e5608 100755 --- a/toolkit-maven-plugin/src/test/java/plugin/GenerateContractsDocMojoTest.java +++ b/toolkit-maven-plugin/src/test/java/plugin/GenerateContractsDocMojoTest.java @@ -17,9 +17,11 @@ package plugin; +import static org.hamcrest.CoreMatchers.containsString; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertThat; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; @@ -58,14 +60,19 @@ public class GenerateContractsDocMojoTest { assertNotNull(generateContractsDocMojo); String testProjectDir = baseDir + File.separator; + String testContractDir = testProjectDir + "contract"; + String testDocumentDir = testProjectDir + "document"; + + if (!new File(testDocumentDir).exists()) { + assertTrue((new File(testDocumentDir)).mkdir()); + } try { - rule.setVariableValueToObject(generateContractsDocMojo, "contractLocation", - testProjectDir + "contract"); - rule.setVariableValueToObject(generateContractsDocMojo, "docOutput", testProjectDir + "document"); + rule.setVariableValueToObject(generateContractsDocMojo, "contractLocation", testContractDir); + rule.setVariableValueToObject(generateContractsDocMojo, "docOutput", testDocumentDir); rule.setVariableValueToObject(generateContractsDocMojo, "docType", "swagger-ui"); generateContractsDocMojo.execute(); - assertNotEquals(0, Files.list(Paths.get(testProjectDir + "document")).count()); + assertNotEquals(0, Files.list(Paths.get(testDocumentDir)).count()); } catch (MojoFailureException | IOException e) { fail(); } @@ -79,17 +86,19 @@ public class GenerateContractsDocMojoTest { assertEquals("contract location is not exists", e.getMessage()); } + String testEmptyDir = testProjectDir + "emptyDir"; + if (!new File(testEmptyDir).exists()) { + assertTrue((new File(testEmptyDir)).mkdir()); + } try { - rule.setVariableValueToObject(generateContractsDocMojo, "contractLocation", - testProjectDir + "emptyContractDir"); + rule.setVariableValueToObject(generateContractsDocMojo, "contractLocation", testEmptyDir); generateContractsDocMojo.execute(); } catch (MojoFailureException e) { - assertTrue(e.getMessage().contains("has no contract files")); + assertThat(e.getMessage(), containsString("has no contract files")); } try { - rule.setVariableValueToObject(generateContractsDocMojo, "contractLocation", - testProjectDir + "document"); + rule.setVariableValueToObject(generateContractsDocMojo, "contractLocation", testDocumentDir); rule.setVariableValueToObject(generateContractsDocMojo, "docType", "nonImpl"); generateContractsDocMojo.execute(); } catch (MojoFailureException e) {
