Search in sources :

Example 11 with MockAndControlForAddDependencySetsTask

use of org.apache.maven.plugins.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask in project maven-plugins by apache.

the class AddDependencySetsTaskTest method testAddDependencySet_ShouldNotAddDependenciesWhenProjectIsStubbed.

// TODO: Find a better way of testing the project-stubbing behavior when a ProjectBuildingException takes place.
public void testAddDependencySet_ShouldNotAddDependenciesWhenProjectIsStubbed() throws AssemblyFormattingException, ArchiveCreationException, InvalidAssemblerConfigurationException, IOException {
    final MavenProject project = new MavenProject(new Model());
    final ProjectBuildingException pbe = new ProjectBuildingException("test", "Test error.", new Throwable());
    final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask(mockManager, new MavenProject(new Model()));
    final String gid = "org.test";
    final String aid = "test-dep";
    final String version = "2.0-SNAPSHOT";
    final String type = "jar";
    final File file = new File("dep-artifact.jar");
    final ArtifactMock depMock = new ArtifactMock(mockManager, gid, aid, version, type, true);
    depMock.setBaseVersion(version);
    depMock.setFile(file);
    final File destFile = new File("assembly-dep-set.zip");
    macTask.expectGetDestFile(destFile);
    macTask.expectBuildFromRepository(pbe);
    macTask.expectCSGetRepositories(null, null);
    macTask.expectCSGetFinalName("final-name");
    macTask.expectAddFile(file, "out/" + aid + "-" + version + "." + type);
    macTask.expectGetMode(0222, 0222);
    final DependencySet ds = new DependencySet();
    ds.setOutputDirectory("/out");
    DefaultAssemblyArchiverTest.setupInterpolators(macTask.configSource);
    mockManager.replayAll();
    final Logger logger = new ConsoleLogger(Logger.LEVEL_DEBUG, "test");
    final AddDependencySetsTask task = new AddDependencySetsTask(Collections.singletonList(ds), Collections.singleton(depMock.getArtifact()), project, macTask.projectBuilder, logger);
    task.addDependencySet(ds, macTask.archiver, macTask.configSource);
    mockManager.verifyAll();
}
Also used : MockAndControlForAddDependencySetsTask(org.apache.maven.plugins.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask) ProjectBuildingException(org.apache.maven.project.ProjectBuildingException) MavenProject(org.apache.maven.project.MavenProject) ConsoleLogger(org.codehaus.plexus.logging.console.ConsoleLogger) Model(org.apache.maven.model.Model) DependencySet(org.apache.maven.plugins.assembly.model.DependencySet) ArtifactMock(org.apache.maven.plugins.assembly.archive.task.testutils.ArtifactMock) ConsoleLogger(org.codehaus.plexus.logging.console.ConsoleLogger) Logger(org.codehaus.plexus.logging.Logger) File(java.io.File) MockAndControlForAddDependencySetsTask(org.apache.maven.plugins.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask)

Example 12 with MockAndControlForAddDependencySetsTask

use of org.apache.maven.plugins.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask in project maven-plugins by apache.

the class AddDependencySetsTaskTest method testAddDependencySet_ShouldInterpolateDefaultOutputFileNameMapping.

public void testAddDependencySet_ShouldInterpolateDefaultOutputFileNameMapping() throws AssemblyFormattingException, ArchiveCreationException, InvalidAssemblerConfigurationException, IOException {
    final String outDir = "tmp/";
    final String mainAid = "main";
    final String mainGid = "org.maingrp";
    final String mainVer = "9";
    final String depAid = "dep";
    final String depGid = "org.depgrp";
    final String depVer = "1";
    final String depExt = "war";
    final DependencySet ds = new DependencySet();
    ds.setOutputDirectory(outDir);
    ds.setDirectoryMode(Integer.toString(10, 8));
    ds.setFileMode(Integer.toString(10, 8));
    final Model mainModel = new Model();
    mainModel.setArtifactId(mainAid);
    mainModel.setGroupId(mainGid);
    mainModel.setVersion(mainVer);
    final MavenProject mainProject = new MavenProject(mainModel);
    final ArtifactMock mainArtifactMock = new ArtifactMock(mockManager, mainGid, mainAid, mainVer, "jar", false);
    mainProject.setArtifact(mainArtifactMock.getArtifact());
    final Model depModel = new Model();
    depModel.setArtifactId(depAid);
    depModel.setGroupId(depGid);
    depModel.setVersion(depVer);
    depModel.setPackaging(depExt);
    final MavenProject depProject = new MavenProject(depModel);
    final ArtifactMock depArtifactMock = new ArtifactMock(mockManager, depGid, depAid, depVer, depExt, false);
    final File newFile = depArtifactMock.setNewFile();
    depProject.setArtifact(depArtifactMock.getArtifact());
    final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask(mockManager, mainProject);
    macTask.expectBuildFromRepository(depProject);
    macTask.expectCSGetFinalName(mainAid + "-" + mainVer);
    macTask.expectCSGetRepositories(null, null);
    macTask.expectGetDestFile(new File("junk"));
    macTask.expectAddFile(newFile, outDir + depAid + "-" + depVer + "." + depExt, 10);
    // macTask.expectGetSession( null );
    macTask.expectGetMode(0222, 0222);
    DefaultAssemblyArchiverTest.setupInterpolators(macTask.configSource);
    mockManager.replayAll();
    final Logger logger = new ConsoleLogger(Logger.LEVEL_DEBUG, "test");
    final AddDependencySetsTask task = new AddDependencySetsTask(Collections.singletonList(ds), Collections.singleton(depArtifactMock.getArtifact()), depProject, macTask.projectBuilder, logger);
    task.addDependencySet(ds, macTask.archiver, macTask.configSource);
    mockManager.verifyAll();
}
Also used : MockAndControlForAddDependencySetsTask(org.apache.maven.plugins.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask) MavenProject(org.apache.maven.project.MavenProject) ConsoleLogger(org.codehaus.plexus.logging.console.ConsoleLogger) Model(org.apache.maven.model.Model) DependencySet(org.apache.maven.plugins.assembly.model.DependencySet) ArtifactMock(org.apache.maven.plugins.assembly.archive.task.testutils.ArtifactMock) ConsoleLogger(org.codehaus.plexus.logging.console.ConsoleLogger) Logger(org.codehaus.plexus.logging.Logger) File(java.io.File) MockAndControlForAddDependencySetsTask(org.apache.maven.plugins.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask)

Aggregations

MockAndControlForAddDependencySetsTask (org.apache.maven.plugins.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask)12 MavenProject (org.apache.maven.project.MavenProject)11 Logger (org.codehaus.plexus.logging.Logger)7 ConsoleLogger (org.codehaus.plexus.logging.console.ConsoleLogger)7 DependencySet (org.apache.maven.plugins.assembly.model.DependencySet)6 Model (org.apache.maven.model.Model)5 ArtifactMock (org.apache.maven.plugins.assembly.archive.task.testutils.ArtifactMock)5 ModuleSet (org.apache.maven.plugins.assembly.model.ModuleSet)5 EasyMockSupport (org.easymock.classextension.EasyMockSupport)5 File (java.io.File)4 ArrayList (java.util.ArrayList)4 Assembly (org.apache.maven.plugins.assembly.model.Assembly)2 Artifact (org.apache.maven.artifact.Artifact)1 ProjectBuildingException (org.apache.maven.project.ProjectBuildingException)1