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));
}
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());
}
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());
}
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());
}
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));
}
Aggregations