@Test
public void testExtractFromGoodNarWithDependencies() throws IOException {

    try (final InputStream in = new FileInputStream("src/test/resources/nars/nifi-foo-nar.nar")) {
        final BundleDetails bundleDetails = extractor.extract(in);
        assertNotNull(bundleDetails);
        assertNotNull(bundleDetails.getBundleIdentifier());
        assertNotNull(bundleDetails.getDependencies());
        assertEquals(1, bundleDetails.getDependencies().size());
        final BundleIdentifier bundleIdentifier = bundleDetails.getBundleIdentifier();
        assertEquals("org.apache.nifi", bundleIdentifier.getGroupId());
        assertEquals("nifi-foo-nar", bundleIdentifier.getArtifactId());
        assertEquals("1.8.0", bundleIdentifier.getVersion());
        final BundleIdentifier dependencyCoordinate = bundleDetails.getDependencies().stream().findFirst().get();
        assertEquals("org.apache.nifi", dependencyCoordinate.getGroupId());
        assertEquals("nifi-bar-nar", dependencyCoordinate.getArtifactId());
        assertEquals("2.0.0", dependencyCoordinate.getVersion());
        final Map<String,String> additionalDetails = bundleDetails.getAdditionalDetails();
        assertNotNull(additionalDetails);
        assertEquals(0, additionalDetails.size());
    }
}