diff --git a/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/SwiftPackageManagerAnalyzer.java b/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/SwiftPackageManagerAnalyzer.java index 5823d8aaf..5805ecb3b 100644 --- a/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/SwiftPackageManagerAnalyzer.java +++ b/dependency-check-core/src/main/java/org/owasp/dependencycheck/analyzer/SwiftPackageManagerAnalyzer.java @@ -142,6 +142,10 @@ public class SwiftPackageManagerAnalyzer extends AbstractFileTypeAnalyzer { if (name != null && !name.isEmpty()) { vendor.addEvidence(SPM_FILE_NAME, "name_project", name, Confidence.HIGHEST); } + + final File actual = dependency.getActualFile(); + final String parentName = actual.getParentFile().getName(); + dependency.setDisplayFileName(parentName + "/" + actual.getName()); } setPackagePath(dependency); } diff --git a/dependency-check-core/src/test/java/org/owasp/dependencycheck/analyzer/SwiftAnalyzersTest.java b/dependency-check-core/src/test/java/org/owasp/dependencycheck/analyzer/SwiftAnalyzersTest.java index 8b81bbe3e..6bb0e5fad 100644 --- a/dependency-check-core/src/test/java/org/owasp/dependencycheck/analyzer/SwiftAnalyzersTest.java +++ b/dependency-check-core/src/test/java/org/owasp/dependencycheck/analyzer/SwiftAnalyzersTest.java @@ -10,6 +10,7 @@ import org.owasp.dependencycheck.dependency.Dependency; import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; +import static org.hamcrest.CoreMatchers.equalTo; import java.io.File; @@ -105,6 +106,7 @@ public class SwiftAnalyzersTest extends BaseTest { assertThat(vendorString, containsString("MIT")); assertThat(result.getProductEvidence().toString(), containsString("EasyPeasy")); assertThat(result.getVersionEvidence().toString(), containsString("0.2.3")); + assertThat(result.getDisplayFileName(),equalTo("EasyPeasy.podspec")); } /** @@ -119,5 +121,6 @@ public class SwiftAnalyzersTest extends BaseTest { spmAnalyzer.analyze(result, null); assertThat(result.getProductEvidence().toString(), containsString("Gloss")); + assertThat(result.getDisplayFileName(),equalTo("Gloss/Package.swift")); } }