|
1 | 1 | package test.org.fugerit.java.doc.project.facade; |
2 | 2 |
|
3 | 3 | import lombok.extern.slf4j.Slf4j; |
| 4 | +import org.apache.logging.log4j.core.util.Assert; |
4 | 5 | import org.apache.maven.model.Dependency; |
| 6 | +import org.apache.maven.model.Model; |
5 | 7 | import org.apache.maven.plugin.MojoExecutionException; |
6 | 8 | import org.apache.maven.plugin.MojoFailureException; |
7 | 9 | import org.fugerit.java.core.cfg.ConfigRuntimeException; |
8 | 10 | import org.fugerit.java.core.io.FileIO; |
| 11 | +import org.fugerit.java.core.util.mvn.FJCoreMaven; |
9 | 12 | import org.fugerit.java.doc.maven.MojoAdd; |
10 | 13 | import org.fugerit.java.doc.project.facade.BasicVenusFacade; |
11 | 14 | import org.fugerit.java.doc.project.facade.VenusContext; |
|
15 | 18 |
|
16 | 19 | import java.io.File; |
17 | 20 | import java.io.IOException; |
| 21 | +import java.util.ArrayList; |
18 | 22 | import java.util.Arrays; |
| 23 | +import java.util.Optional; |
19 | 24 | import java.util.UUID; |
20 | 25 |
|
21 | 26 | @Slf4j |
@@ -152,4 +157,70 @@ void testAdditional() { |
152 | 157 | BasicVenusFacade.checkDependencies( true, d ); |
153 | 158 | } |
154 | 159 |
|
| 160 | + @Test |
| 161 | + void testMojoAddFjCoreVersion1() throws IOException, MojoExecutionException, MojoFailureException { |
| 162 | + for ( String currentConfig : Arrays.asList( "ok6-pom" ) ) { |
| 163 | + File projectDir = this.initConfigWorker( currentConfig ); |
| 164 | + MojoAdd mojoAdd = new MojoAdd() { |
| 165 | + @Override |
| 166 | + public void execute() throws MojoExecutionException, MojoFailureException { |
| 167 | + this.version = VenusContext.VERSION_NA_VERIFY_PLUGIN; |
| 168 | + this.extensions = "fj-doc-base,fj-doc-base-json,fj-doc-base-yaml,fj-doc-freemarker,fj-doc-mod-fop,fj-doc-mod-poi,fj-doc-mod-opencsv"; |
| 169 | + this.projectFolder = projectDir.getAbsolutePath(); |
| 170 | + this.addDocFacade = true; |
| 171 | + this.force = true; |
| 172 | + this.excludeXmlApis = true; |
| 173 | + this.addVerifyPlugin = true; |
| 174 | + this.addJunit5 = true; |
| 175 | + this.addLombok = true; |
| 176 | + super.execute(); |
| 177 | + } |
| 178 | + }; |
| 179 | + mojoAdd.execute(); |
| 180 | + Assertions.assertTrue( projectDir.exists() ); |
| 181 | + } |
| 182 | + } |
| 183 | + |
| 184 | + @Test |
| 185 | + void testMojoAddFjCoreVersion2() throws IOException { |
| 186 | + for ( String currentConfig : Arrays.asList( "ko2-pom" ) ) { |
| 187 | + File projectDir = this.initConfigWorker( currentConfig ); |
| 188 | + MojoAdd mojoAdd = new MojoAdd() { |
| 189 | + @Override |
| 190 | + public void execute() throws MojoExecutionException, MojoFailureException { |
| 191 | + this.version = VenusContext.VERSION_NA_VERIFY_PLUGIN; |
| 192 | + this.extensions = "fj-doc-base,fj-doc-base-json,fj-doc-base-yaml,fj-doc-freemarker,fj-doc-mod-fop,fj-doc-mod-poi,fj-doc-mod-opencsv"; |
| 193 | + this.projectFolder = projectDir.getAbsolutePath(); |
| 194 | + this.addDocFacade = true; |
| 195 | + this.force = true; |
| 196 | + this.excludeXmlApis = true; |
| 197 | + this.addVerifyPlugin = true; |
| 198 | + this.addJunit5 = true; |
| 199 | + this.addLombok = true; |
| 200 | + super.execute(); |
| 201 | + } |
| 202 | + }; |
| 203 | + Assertions.assertThrows( ConfigRuntimeException.class, mojoAdd::execute ); |
| 204 | + } |
| 205 | + } |
| 206 | + |
| 207 | + @Test |
| 208 | + void testFjVersionCheck() { |
| 209 | + Model model = new Model(); |
| 210 | + String projectPomFjCoreVersion = BasicVenusFacade.versionToCheck( FJCoreMaven.FJ_CORE_GROUP_ID, FJCoreMaven.FJ_CORE_ARTIFACT_ID, model ); |
| 211 | + Assertions.assertNull( projectPomFjCoreVersion ); |
| 212 | + model.setDependencies( new ArrayList<>() ); |
| 213 | + Dependency d = new Dependency(); |
| 214 | + d.setGroupId( FJCoreMaven.FJ_CORE_GROUP_ID ); |
| 215 | + d.setArtifactId( FJCoreMaven.FJ_CORE_ARTIFACT_ID ); |
| 216 | + model.getDependencies().add( d ); |
| 217 | + projectPomFjCoreVersion = BasicVenusFacade.versionToCheck( FJCoreMaven.FJ_CORE_GROUP_ID, FJCoreMaven.FJ_CORE_ARTIFACT_ID, model ); |
| 218 | + Assertions.assertNull( projectPomFjCoreVersion ); |
| 219 | + Optional<String> fjCoreVersion = Optional.empty(); |
| 220 | + BasicVenusFacade.fjVersionCheck( projectPomFjCoreVersion, fjCoreVersion ); |
| 221 | + BasicVenusFacade.fjVersionCheck( "8.6.9", Optional.of( "8.7.0" ) ); |
| 222 | + BasicVenusFacade.fjVersionCheck( "8.7.1", Optional.of( "8.7.0" ) ); |
| 223 | + Assertions.assertNull( projectPomFjCoreVersion ); |
| 224 | + } |
| 225 | + |
155 | 226 | } |
0 commit comments