Search in sources :

Example 1 with RecordingRepositoryListener

use of org.sonatype.aether.test.impl.RecordingRepositoryListener in project sonatype-aether by sonatype.

the class DefaultArtifactResolverTest method testRepositoryEventsSuccessfulLocal.

@Test
public void testRepositoryEventsSuccessfulLocal() throws ArtifactResolutionException, IOException {
    RecordingRepositoryListener listener = new RecordingRepositoryListener();
    session.setRepositoryListener(listener);
    File tmpFile = TestFileUtils.createTempFile("tmp");
    Map<String, String> properties = new HashMap<String, String>();
    properties.put(ArtifactProperties.LOCAL_PATH, tmpFile.getAbsolutePath());
    artifact = artifact.setProperties(properties);
    ArtifactRequest request = new ArtifactRequest(artifact, null, "");
    resolver.resolveArtifact(session, request);
    List<EventWrapper> events = listener.getEvents();
    assertEquals(2, events.size());
    EventWrapper event = events.get(0);
    assertEquals(RecordingRepositoryListener.Type.ARTIFACT_RESOLVING, event.getType());
    assertNull(event.getEvent().getException());
    assertEquals(artifact, event.getEvent().getArtifact());
    event = events.get(1);
    assertEquals(RecordingRepositoryListener.Type.ARTIFACT_RESOLVED, event.getType());
    assertNull(event.getEvent().getException());
    assertEquals(artifact, event.getEvent().getArtifact().setFile(null));
}
Also used : ArtifactRequest(org.sonatype.aether.resolution.ArtifactRequest) LocalArtifactRequest(org.sonatype.aether.repository.LocalArtifactRequest) HashMap(java.util.HashMap) RecordingRepositoryListener(org.sonatype.aether.test.impl.RecordingRepositoryListener) File(java.io.File) EventWrapper(org.sonatype.aether.test.impl.RecordingRepositoryListener.EventWrapper) Test(org.junit.Test)

Example 2 with RecordingRepositoryListener

use of org.sonatype.aether.test.impl.RecordingRepositoryListener in project sonatype-aether by sonatype.

the class DefaultArtifactResolverTest method testRepositoryEventsUnsuccessfulLocal.

@Test
public void testRepositoryEventsUnsuccessfulLocal() throws IOException {
    RecordingRepositoryListener listener = new RecordingRepositoryListener();
    session.setRepositoryListener(listener);
    Map<String, String> properties = new HashMap<String, String>();
    properties.put(ArtifactProperties.LOCAL_PATH, "doesnotexist");
    artifact = artifact.setProperties(properties);
    ArtifactRequest request = new ArtifactRequest(artifact, null, "");
    try {
        resolver.resolveArtifact(session, request);
        fail("expected exception");
    } catch (ArtifactResolutionException e) {
    }
    List<EventWrapper> events = listener.getEvents();
    assertEquals(2, events.size());
    EventWrapper event = events.get(0);
    assertEquals(artifact, event.getEvent().getArtifact());
    assertEquals(Type.ARTIFACT_RESOLVING, event.getType());
    event = events.get(1);
    assertEquals(artifact, event.getEvent().getArtifact());
    assertEquals(Type.ARTIFACT_RESOLVED, event.getType());
    assertNotNull(event.getEvent().getException());
    assertEquals(1, event.getEvent().getExceptions().size());
}
Also used : ArtifactResolutionException(org.sonatype.aether.resolution.ArtifactResolutionException) ArtifactRequest(org.sonatype.aether.resolution.ArtifactRequest) LocalArtifactRequest(org.sonatype.aether.repository.LocalArtifactRequest) HashMap(java.util.HashMap) RecordingRepositoryListener(org.sonatype.aether.test.impl.RecordingRepositoryListener) EventWrapper(org.sonatype.aether.test.impl.RecordingRepositoryListener.EventWrapper) Test(org.junit.Test)

Example 3 with RecordingRepositoryListener

use of org.sonatype.aether.test.impl.RecordingRepositoryListener in project sonatype-aether by sonatype.

the class DefaultArtifactResolverTest method testRepositoryEventsUnsuccessfulRemote.

@Test
public void testRepositoryEventsUnsuccessfulRemote() throws IOException, ArtifactResolutionException {
    RecordingRepositoryConnector connector = new RecordingRepositoryConnector() {

        @Override
        public void get(Collection<? extends ArtifactDownload> artifactDownloads, Collection<? extends MetadataDownload> metadataDownloads) {
            super.get(artifactDownloads, metadataDownloads);
            ArtifactDownload download = artifactDownloads.iterator().next();
            ArtifactTransferException exception = new ArtifactNotFoundException(download.getArtifact(), null, "not found");
            download.setException(exception);
        }
    };
    remoteRepositoryManager.setConnector(connector);
    RecordingRepositoryListener listener = new RecordingRepositoryListener();
    session.setRepositoryListener(listener);
    ArtifactRequest request = new ArtifactRequest(artifact, null, "");
    request.addRepository(new RemoteRepository("id", "default", "file:///"));
    try {
        resolver.resolveArtifact(session, request);
        fail("expected exception");
    } catch (ArtifactResolutionException e) {
    }
    List<EventWrapper> events = listener.getEvents();
    assertEquals(2, events.size());
    EventWrapper event = events.get(0);
    assertEquals(artifact, event.getEvent().getArtifact());
    assertEquals(Type.ARTIFACT_RESOLVING, event.getType());
    event = events.get(1);
    assertEquals(artifact, event.getEvent().getArtifact());
    assertEquals(Type.ARTIFACT_RESOLVED, event.getType());
    assertNotNull(event.getEvent().getException());
    assertEquals(1, event.getEvent().getExceptions().size());
}
Also used : ArtifactResolutionException(org.sonatype.aether.resolution.ArtifactResolutionException) ArtifactTransferException(org.sonatype.aether.transfer.ArtifactTransferException) ArtifactRequest(org.sonatype.aether.resolution.ArtifactRequest) LocalArtifactRequest(org.sonatype.aether.repository.LocalArtifactRequest) ArtifactDownload(org.sonatype.aether.spi.connector.ArtifactDownload) Collection(java.util.Collection) RecordingRepositoryListener(org.sonatype.aether.test.impl.RecordingRepositoryListener) RemoteRepository(org.sonatype.aether.repository.RemoteRepository) MetadataDownload(org.sonatype.aether.spi.connector.MetadataDownload) ArtifactNotFoundException(org.sonatype.aether.transfer.ArtifactNotFoundException) EventWrapper(org.sonatype.aether.test.impl.RecordingRepositoryListener.EventWrapper) Test(org.junit.Test)

Example 4 with RecordingRepositoryListener

use of org.sonatype.aether.test.impl.RecordingRepositoryListener in project sonatype-aether by sonatype.

the class DefaultArtifactResolverTest method testRepositoryEventsOnVersionResolverFail.

@Test
public void testRepositoryEventsOnVersionResolverFail() {
    resolver.setVersionResolver(new VersionResolver() {

        public VersionResult resolveVersion(RepositorySystemSession session, VersionRequest request) throws VersionResolutionException {
            throw new VersionResolutionException(new VersionResult(request));
        }
    });
    RecordingRepositoryListener listener = new RecordingRepositoryListener();
    session.setRepositoryListener(listener);
    ArtifactRequest request = new ArtifactRequest(artifact, null, "");
    try {
        resolver.resolveArtifact(session, request);
        fail("expected exception");
    } catch (ArtifactResolutionException e) {
    }
    List<EventWrapper> events = listener.getEvents();
    assertEquals(2, events.size());
    EventWrapper event = events.get(0);
    assertEquals(artifact, event.getEvent().getArtifact());
    assertEquals(Type.ARTIFACT_RESOLVING, event.getType());
    event = events.get(1);
    assertEquals(artifact, event.getEvent().getArtifact());
    assertEquals(Type.ARTIFACT_RESOLVED, event.getType());
    assertNotNull(event.getEvent().getException());
    assertEquals(1, event.getEvent().getExceptions().size());
}
Also used : RepositorySystemSession(org.sonatype.aether.RepositorySystemSession) TestRepositorySystemSession(org.sonatype.aether.test.impl.TestRepositorySystemSession) ArtifactResolutionException(org.sonatype.aether.resolution.ArtifactResolutionException) ArtifactRequest(org.sonatype.aether.resolution.ArtifactRequest) LocalArtifactRequest(org.sonatype.aether.repository.LocalArtifactRequest) VersionResolver(org.sonatype.aether.impl.VersionResolver) VersionResult(org.sonatype.aether.resolution.VersionResult) VersionRequest(org.sonatype.aether.resolution.VersionRequest) VersionResolutionException(org.sonatype.aether.resolution.VersionResolutionException) RecordingRepositoryListener(org.sonatype.aether.test.impl.RecordingRepositoryListener) EventWrapper(org.sonatype.aether.test.impl.RecordingRepositoryListener.EventWrapper) Test(org.junit.Test)

Example 5 with RecordingRepositoryListener

use of org.sonatype.aether.test.impl.RecordingRepositoryListener in project sonatype-aether by sonatype.

the class DefaultArtifactResolverTest method testRepositoryEventsSuccessfulRemote.

@Test
public void testRepositoryEventsSuccessfulRemote() throws ArtifactResolutionException {
    RecordingRepositoryListener listener = new RecordingRepositoryListener();
    session.setRepositoryListener(listener);
    ArtifactRequest request = new ArtifactRequest(artifact, null, "");
    request.addRepository(new RemoteRepository("id", "default", "file:///"));
    resolver.resolveArtifact(session, request);
    List<EventWrapper> events = listener.getEvents();
    assertEquals(2, events.size());
    EventWrapper event = events.get(0);
    assertEquals(RecordingRepositoryListener.Type.ARTIFACT_RESOLVING, event.getType());
    assertNull(event.getEvent().getException());
    assertEquals(artifact, event.getEvent().getArtifact());
    event = events.get(1);
    assertEquals(RecordingRepositoryListener.Type.ARTIFACT_RESOLVED, event.getType());
    assertNull(event.getEvent().getException());
    assertEquals(artifact, event.getEvent().getArtifact().setFile(null));
}
Also used : ArtifactRequest(org.sonatype.aether.resolution.ArtifactRequest) LocalArtifactRequest(org.sonatype.aether.repository.LocalArtifactRequest) RecordingRepositoryListener(org.sonatype.aether.test.impl.RecordingRepositoryListener) RemoteRepository(org.sonatype.aether.repository.RemoteRepository) EventWrapper(org.sonatype.aether.test.impl.RecordingRepositoryListener.EventWrapper) Test(org.junit.Test)

Aggregations

RecordingRepositoryListener (org.sonatype.aether.test.impl.RecordingRepositoryListener)7 Test (org.junit.Test)5 LocalArtifactRequest (org.sonatype.aether.repository.LocalArtifactRequest)5 ArtifactRequest (org.sonatype.aether.resolution.ArtifactRequest)5 EventWrapper (org.sonatype.aether.test.impl.RecordingRepositoryListener.EventWrapper)5 RemoteRepository (org.sonatype.aether.repository.RemoteRepository)3 ArtifactResolutionException (org.sonatype.aether.resolution.ArtifactResolutionException)3 TestRepositorySystemSession (org.sonatype.aether.test.impl.TestRepositorySystemSession)3 File (java.io.File)2 HashMap (java.util.HashMap)2 Before (org.junit.Before)2 DefaultArtifact (org.sonatype.aether.util.artifact.DefaultArtifact)2 DefaultMetadata (org.sonatype.aether.util.metadata.DefaultMetadata)2 Collection (java.util.Collection)1 RepositorySystemSession (org.sonatype.aether.RepositorySystemSession)1 DeployRequest (org.sonatype.aether.deployment.DeployRequest)1 UpdateCheckManager (org.sonatype.aether.impl.UpdateCheckManager)1 VersionResolver (org.sonatype.aether.impl.VersionResolver)1 InstallRequest (org.sonatype.aether.installation.InstallRequest)1 VersionRequest (org.sonatype.aether.resolution.VersionRequest)1