@Test
public void testResolvesCompileAndTransitiveProvidedScopes() throws RepositoryException {

    ArtifactResolver resolver = getResolver(true, true);
    CollectionResult res = resolver.collectTransitiveDeps("used-scopes:root:0");
    assertTrue(res.getFailures().isEmpty());
    Set<Artifact> artifacts = res.getResolvedArtifacts();
    assertEquals(6, artifacts.size());
    assertEquals(1, artifacts.stream().map(Artifact::getArtifactId).filter("compile"::equals).count());
    assertEquals(1, artifacts.stream().map(Artifact::getArtifactId).filter("deep-compile-compile"::equals).count());
    assertEquals(1, artifacts.stream().map(Artifact::getArtifactId).filter("deep-compile-provided"::equals).count());
    assertEquals(1, artifacts.stream().map(Artifact::getArtifactId).filter("provided"::equals).count());
    assertEquals(1, artifacts.stream().map(Artifact::getArtifactId).filter("deep-provided-compile"::equals).count());
    assertEquals(1, artifacts.stream().map(Artifact::getArtifactId).filter("deep-provided-provided"::equals).count());
}