use of com.synopsys.integration.detectable.detectables.xcode.model.PackageState in project synopsys-detect by blackducksoftware.
the class PackageResolvedTransformer method convertToDependency.
private Optional<Dependency> convertToDependency(ResolvedPackage resolvedPackage) {
PackageState packageState = resolvedPackage.getPackageState();
String repositoryURL = resolvedPackage.getRepositoryURL();
try {
String name = extractPackageName(repositoryURL);
String version = packageState.getVersion();
ExternalId externalId = externalIdFactory.createNameVersionExternalId(Forge.GITHUB, name, version);
return Optional.of(new Dependency(name, version, externalId));
} catch (MalformedURLException exception) {
logger.warn(String.format("Package '%s' has a malformed url. It cannot be added to the graph.", resolvedPackage.getPackageName()));
logger.debug(String.format("Package '%s', Version '%s', Branch '%s', Revision: '%s', MalformedURL '%s'", resolvedPackage.getPackageName(), packageState.getVersion(), StringUtils.defaultIfEmpty(packageState.getBranch(), "N/A"), packageState.getRevision(), repositoryURL), exception);
return Optional.empty();
}
}
use of com.synopsys.integration.detectable.detectables.xcode.model.PackageState in project synopsys-detect by blackducksoftware.
the class PackageResolvedTransformerTest method manyExtensionsTest.
@Test
void manyExtensionsTest() {
ResolvedPackage rSwiftLibraryPackage = new ResolvedPackage("R.swift.Library", "http://github.com/mac-cain13/R.swift.Library", new PackageState(null, "8998cfe77f4fce79ee6dfab0c88a7d551659d8fb", "5.4.0"));
PackageResolvedTransformer transformer = new PackageResolvedTransformer(externalIdFactory);
PackageResolved packageResolved = createPackageResolved(rSwiftLibraryPackage);
DependencyGraph dependencyGraph = transformer.transform(packageResolved);
GraphAssert graphAssert = new GraphAssert(Forge.GITHUB, dependencyGraph);
ExternalId rSwiftLibrary = externalIdFactory.createNameVersionExternalId(Forge.GITHUB, "mac-cain13/R.swift.Library", "5.4.0");
graphAssert.hasRootDependency(rSwiftLibrary);
graphAssert.hasRootSize(1);
}
use of com.synopsys.integration.detectable.detectables.xcode.model.PackageState in project synopsys-detect by blackducksoftware.
the class PackageResolvedTransformerTest method noGitExtensionTest.
@Test
void noGitExtensionTest() {
ResolvedPackage swiftLogPackage = new ResolvedPackage("swift-log", // Won't be malformed for sanity check
"http://github.com/apple/swift-log", new PackageState(null, "5d66f7ba25daf4f94100e7022febf3c75e37a6c7", "1.4.2"));
PackageResolvedTransformer transformer = new PackageResolvedTransformer(externalIdFactory);
PackageResolved packageResolved = createPackageResolved(swiftLogPackage);
DependencyGraph dependencyGraph = transformer.transform(packageResolved);
GraphAssert graphAssert = new GraphAssert(Forge.GITHUB, dependencyGraph);
ExternalId swiftLog = externalIdFactory.createNameVersionExternalId(Forge.GITHUB, "apple/swift-log", "1.4.2");
graphAssert.hasRootDependency(swiftLog);
graphAssert.hasRootSize(1);
}
use of com.synopsys.integration.detectable.detectables.xcode.model.PackageState in project synopsys-detect by blackducksoftware.
the class PackageResolvedTransformerTest method malformedUrlTest.
@Test
void malformedUrlTest() {
ResolvedPackage malformedUrlPackage = new ResolvedPackage("MalformedUrlPackage", "data that isn't a url", new PackageState(null, "revision", "version"));
PackageResolvedTransformer transformer = new PackageResolvedTransformer(externalIdFactory);
PackageResolved packageResolved = createPackageResolved(malformedUrlPackage);
DependencyGraph dependencyGraph = transformer.transform(packageResolved);
GraphAssert graphAssert = new GraphAssert(Forge.GITHUB, dependencyGraph);
graphAssert.hasRootSize(0);
}
use of com.synopsys.integration.detectable.detectables.xcode.model.PackageState in project synopsys-detect by blackducksoftware.
the class PackageResolvedTransformerTest method testHttpWithGit.
@Test
void testHttpWithGit() {
ResolvedPackage auth0Package = new ResolvedPackage("Auth0", "http://github.com/auth0/Auth0.swift.git", new PackageState(null, "8e8a6b0337a27a3342beb72b5407141fdd4a7860", "1.35.0"));
PackageResolved packageResolved = createPackageResolved(auth0Package);
PackageResolvedTransformer transformer = new PackageResolvedTransformer(externalIdFactory);
DependencyGraph dependencyGraph = transformer.transform(packageResolved);
GraphAssert graphAssert = new GraphAssert(Forge.GITHUB, dependencyGraph);
ExternalId auth0 = externalIdFactory.createNameVersionExternalId(Forge.GITHUB, "auth0/Auth0.swift", "1.35.0");
graphAssert.hasRootDependency(auth0);
graphAssert.hasRootSize(1);
}
Aggregations