use of org.apache.maven.plugins.assembly.model.DependencySet in project maven-plugins by apache.
the class DependencySetAssemblyPhaseTest method testExecute_ShouldAddOneDependencyFromProject.
public void testExecute_ShouldAddOneDependencyFromProject() throws AssemblyFormattingException, ArchiveCreationException, IOException, InvalidAssemblerConfigurationException, DependencyResolutionException {
final String outputLocation = "/out";
final MavenProject project = newMavenProject("group", "project", "0");
final ArtifactMock projectArtifactMock = new ArtifactMock(mm, "group", "project", "0", "jar", false);
project.setArtifact(projectArtifactMock.getArtifact());
final DependencySet ds = new DependencySet();
ds.setUseProjectArtifact(false);
ds.setOutputDirectory(outputLocation);
ds.setOutputFileNameMapping("${artifact.artifactId}");
ds.setUnpack(false);
ds.setScope(Artifact.SCOPE_COMPILE);
ds.setFileMode(Integer.toString(10, 8));
final Assembly assembly = new Assembly();
assembly.setId("test");
assembly.setIncludeBaseDirectory(false);
assembly.addDependencySet(ds);
final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask(mm, project);
final ArtifactMock artifactMock = new ArtifactMock(mm, "group", "dep", "1", "jar", false);
System.out.println("On test setup, hashcode for dependency artifact: " + artifactMock.getArtifact().hashCode());
macTask.expectCSGetRepositories(null, null);
macTask.expectGetDestFile(new File("junk"));
// macTask.expectAddFile( artifactFile, "out/dep", 10 );
project.setArtifacts(Collections.singleton(artifactMock.getArtifact()));
macTask.expectCSGetFinalName("final-name");
final Logger logger = new ConsoleLogger(Logger.LEVEL_DEBUG, "test");
final MavenProject depProject = newMavenProject("group", "dep", "1");
macTask.expectBuildFromRepository(depProject);
macTask.expectResolveDependencySets();
mm.replayAll();
createPhase(macTask, logger, macTask.dependencyResolver).execute(assembly, macTask.archiver, macTask.configSource);
mm.verifyAll();
}
use of org.apache.maven.plugins.assembly.model.DependencySet in project maven-plugins by apache.
the class AddDependencySetsTaskTest method testGetDependencyArtifacts_ShouldGetOneDependencyArtifact.
public void testGetDependencyArtifacts_ShouldGetOneDependencyArtifact() throws ArchiveCreationException, InvalidAssemblerConfigurationException {
final MavenProject project = new MavenProject(new Model());
final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask(mockManager);
final ArtifactMock artifactMock = new ArtifactMock(mockManager, "group", "artifact", "version", "jar", false);
project.setArtifacts(Collections.singleton(artifactMock.getArtifact()));
final DependencySet dependencySet = new DependencySet();
final Logger logger = new ConsoleLogger(Logger.LEVEL_DEBUG, "test");
mockManager.replayAll();
final AddDependencySetsTask task = new AddDependencySetsTask(Collections.singletonList(dependencySet), Collections.singleton(artifactMock.getArtifact()), project, macTask.projectBuilder, logger);
final Set<Artifact> result = task.resolveDependencyArtifacts(dependencySet);
assertNotNull(result);
assertEquals(1, result.size());
assertSame(artifactMock.getArtifact(), result.iterator().next());
mockManager.verifyAll();
}
use of org.apache.maven.plugins.assembly.model.DependencySet in project maven-plugins by apache.
the class AddDependencySetsTaskTest method testGetDependencyArtifacts_ShouldIgnoreTransitivePathFilteringWhenIncludeNotTransitive.
public void testGetDependencyArtifacts_ShouldIgnoreTransitivePathFilteringWhenIncludeNotTransitive() throws ArchiveCreationException, InvalidAssemblerConfigurationException {
final MavenProject project = new MavenProject(new Model());
final Set<Artifact> artifacts = new HashSet<Artifact>();
final ArtifactMock am = new ArtifactMock(mockManager, "group", "artifact", "1.0", "jar", false);
artifacts.add(am.getArtifact());
final ArtifactMock am2 = new ArtifactMock(mockManager, "group2", "artifact2", "1.0", "jar", false);
artifacts.add(am2.getArtifact());
final DependencySet dependencySet = new DependencySet();
dependencySet.addInclude("group:artifact");
dependencySet.setUseTransitiveFiltering(false);
final Logger logger = new ConsoleLogger(Logger.LEVEL_DEBUG, "test");
mockManager.replayAll();
final AddDependencySetsTask task = new AddDependencySetsTask(Collections.singletonList(dependencySet), artifacts, project, null, logger);
final Set<Artifact> result = task.resolveDependencyArtifacts(dependencySet);
assertNotNull(result);
assertEquals(1, result.size());
assertSame(am.getArtifact(), result.iterator().next());
mockManager.verifyAll();
}
use of org.apache.maven.plugins.assembly.model.DependencySet in project maven-plugins by apache.
the class AddDependencySetsTaskTest method testAddDependencySet_ShouldNotAddDependenciesWhenProjectHasNone.
public void testAddDependencySet_ShouldNotAddDependenciesWhenProjectHasNone() throws AssemblyFormattingException, ArchiveCreationException, InvalidAssemblerConfigurationException {
final MavenProject project = new MavenProject(new Model());
final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask(mockManager);
final DependencySet ds = new DependencySet();
ds.setOutputDirectory("/out");
mockManager.replayAll();
final Logger logger = new ConsoleLogger(Logger.LEVEL_DEBUG, "test");
final AddDependencySetsTask task = new AddDependencySetsTask(Collections.singletonList(ds), null, project, macTask.projectBuilder, logger);
task.addDependencySet(ds, null, macTask.configSource);
mockManager.verifyAll();
}
use of org.apache.maven.plugins.assembly.model.DependencySet in project maven-plugins by apache.
the class DependencySetAssemblyPhase method execute.
/**
* {@inheritDoc}
*/
@Override
public void execute(final Assembly assembly, final Archiver archiver, final AssemblerConfigurationSource configSource) throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException, DependencyResolutionException {
Map<DependencySet, Set<Artifact>> resolved = dependencyResolver.resolveDependencySets(assembly, configSource, assembly.getDependencySets());
for (Map.Entry<DependencySet, Set<Artifact>> dependencySetSetEntry : resolved.entrySet()) {
final AddDependencySetsTask task = new AddDependencySetsTask(Collections.singletonList(dependencySetSetEntry.getKey()), dependencySetSetEntry.getValue(), configSource.getProject(), projectBuilder, getLogger());
task.execute(archiver, configSource);
}
}
Aggregations