use of org.apache.maven.plugins.assembly.model.ModuleSet in project maven-plugins by apache.
the class ModuleSetAssemblyPhaseTest method testGetModuleProjects_ShouldExcludeModuleAndDescendentsTransitively.
public void testGetModuleProjects_ShouldExcludeModuleAndDescendentsTransitively() throws ArchiveCreationException {
final EasyMockSupport mm = new EasyMockSupport();
final MavenProject project = createProject("group", "artifact", "version", null);
final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask(mm, project);
addArtifact(project, mm, false);
final MavenProject project2 = createProject("group", "artifact2", "version", project);
addArtifact(project2, mm, false);
final MavenProject project3 = createProject("group", "artifact3", "version", project2);
addArtifact(project3, mm, true);
final List<MavenProject> projects = new ArrayList<MavenProject>();
projects.add(project);
projects.add(project2);
projects.add(project3);
macTask.expectGetReactorProjects(projects);
final ModuleSet moduleSet = new ModuleSet();
moduleSet.setIncludeSubModules(true);
moduleSet.addExclude("group:artifact2");
mm.replayAll();
final Set<MavenProject> moduleProjects = ModuleSetAssemblyPhase.getModuleProjects(moduleSet, macTask.configSource, logger);
assertTrue(moduleProjects.isEmpty());
mm.verifyAll();
}
use of org.apache.maven.plugins.assembly.model.ModuleSet in project maven-plugins by apache.
the class DefaultDependencyResolver method resolveDependencySets.
@Override
public Map<DependencySet, Set<Artifact>> resolveDependencySets(final Assembly assembly, ModuleSet moduleSet, final AssemblerConfigurationSource configSource, List<DependencySet> dependencySets) throws DependencyResolutionException {
Map<DependencySet, Set<Artifact>> result = new LinkedHashMap<DependencySet, Set<Artifact>>();
for (DependencySet dependencySet : dependencySets) {
final MavenProject currentProject = configSource.getProject();
final ResolutionManagementInfo info = new ResolutionManagementInfo(currentProject);
updateRepositoryResolutionRequirements(assembly, info);
final AssemblyId assemblyId = AssemblyId.createAssemblyId(assembly);
updateDependencySetResolutionRequirements(dependencySet, info, assemblyId, configSource.getMavenSession().getProjectBuildingRequest(), currentProject);
updateModuleSetResolutionRequirements(assemblyId, moduleSet, dependencySet, info, configSource);
resolve(assembly, configSource, result, dependencySet, info);
}
return result;
}
use of org.apache.maven.plugins.assembly.model.ModuleSet in project maven-plugins by apache.
the class ModuleSetAssemblyPhaseTest method testGetModuleProjects_ShouldReturnDescendentModulesOfCurrentProject.
public void testGetModuleProjects_ShouldReturnDescendentModulesOfCurrentProject() throws ArchiveCreationException {
final EasyMockSupport mm = new EasyMockSupport();
final MavenProject project = createProject("group", "artifact", "version", null);
final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask(mm, project);
final MavenProject project2 = createProject("group", "artifact2", "version", project);
final MavenProject project3 = createProject("group", "artifact3", "version", project2);
final List<MavenProject> projects = new ArrayList<MavenProject>();
projects.add(project);
projects.add(project2);
projects.add(project3);
macTask.expectGetReactorProjects(projects);
final ModuleSet moduleSet = new ModuleSet();
moduleSet.setIncludeSubModules(true);
mm.replayAll();
final Set<MavenProject> moduleProjects = ModuleSetAssemblyPhase.getModuleProjects(moduleSet, macTask.configSource, logger);
assertEquals(2, moduleProjects.size());
final List<MavenProject> check = new ArrayList<MavenProject>();
check.add(project2);
check.add(project3);
verifyResultIs(check, moduleProjects);
mm.verifyAll();
}
use of org.apache.maven.plugins.assembly.model.ModuleSet in project maven-plugins by apache.
the class ModuleSetAssemblyPhaseTest method testExecute_ShouldAddOneModuleSetWithOneModuleInIt.
public void testExecute_ShouldAddOneModuleSetWithOneModuleInIt() throws ArchiveCreationException, AssemblyFormattingException, IOException, InvalidAssemblerConfigurationException, DependencyResolutionException {
final EasyMockSupport mm = new EasyMockSupport();
final MavenProject project = createProject("group", "artifact", "version", null);
final MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask(mm, project);
final MavenProject module = createProject("group", "module", "version", project);
final ArtifactMock moduleArtifactMock = new ArtifactMock(mm, "group", "module", "version", "jar", false);
final File moduleArtifactFile = moduleArtifactMock.setNewFile();
module.setArtifact(moduleArtifactMock.getArtifact());
final List<MavenProject> projects = new ArrayList<MavenProject>();
projects.add(module);
macTask.expectGetReactorProjects(projects);
macTask.expectGetFinalName("final-name");
macTask.expectGetDestFile(new File("junk"));
macTask.expectGetMode(0777, 0777);
final int mode = TypeConversionUtils.modeToInt("777", new ConsoleLogger(Logger.LEVEL_DEBUG, "test"));
macTask.expectAddFile(moduleArtifactFile, "out/artifact", mode);
final Assembly assembly = new Assembly();
assembly.setIncludeBaseDirectory(false);
final ModuleSet ms = new ModuleSet();
final ModuleBinaries bin = new ModuleBinaries();
bin.setOutputFileNameMapping("artifact");
bin.setOutputDirectory("out");
bin.setFileMode("777");
bin.setUnpack(false);
bin.setIncludeDependencies(false);
ms.setBinaries(bin);
assembly.addModuleSet(ms);
final Logger logger = new ConsoleLogger(Logger.LEVEL_DEBUG, "test");
macTask.expectResolveDependencySets();
DefaultAssemblyArchiverTest.setupInterpolators(macTask.configSource);
mm.replayAll();
final ModuleSetAssemblyPhase phase = createPhase(logger, macTask.dependencyResolver, null);
phase.execute(assembly, macTask.archiver, macTask.configSource);
mm.verifyAll();
}
use of org.apache.maven.plugins.assembly.model.ModuleSet in project maven-plugins by apache.
the class ModuleSetAssemblyPhaseTest method testGetModuleProjects_ShouldReturnNothingWhenReactorContainsTwoSiblingProjects.
public void testGetModuleProjects_ShouldReturnNothingWhenReactorContainsTwoSiblingProjects() throws ArchiveCreationException {
final EasyMockSupport mm = new EasyMockSupport();
final MavenProject project = createProject("group", "artifact", "version", null);
final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask(mm, project);
final MavenProject project2 = createProject("group", "artifact2", "version", null);
final List<MavenProject> projects = new ArrayList<MavenProject>();
projects.add(project);
projects.add(project2);
macTask.expectGetReactorProjects(projects);
final ModuleSet moduleSet = new ModuleSet();
moduleSet.setIncludeSubModules(true);
mm.replayAll();
final Set<MavenProject> moduleProjects = ModuleSetAssemblyPhase.getModuleProjects(moduleSet, macTask.configSource, logger);
assertTrue(moduleProjects.isEmpty());
mm.verifyAll();
}
Aggregations