Search in sources :

Example 1 with PackageState

use of com.synopsys.integration.detectable.detectables.swift.lock.data.PackageState in project synopsys-detect by blackducksoftware.

the class PackageResolvedTransformerTest method testHttpsWithGit.

@Test
void testHttpsWithGit() {
    ResolvedPackage swiftCollectionsPackage = new ResolvedPackage("swift-collections", "https://github.com/apple/swift-collections.git", new PackageState(null, "2d33a0ea89c961dcb2b3da2157963d9c0370347e", "1.0.1"));
    PackageResolved packageResolved = createPackageResolved(swiftCollectionsPackage);
    PackageResolvedTransformer transformer = new PackageResolvedTransformer();
    DependencyGraph dependencyGraph = transformer.transform(packageResolved);
    GraphAssert graphAssert = new GraphAssert(Forge.GITHUB, dependencyGraph);
    ExternalId swiftCollections = ExternalId.FACTORY.createNameVersionExternalId(Forge.GITHUB, "apple/swift-collections", "1.0.1");
    graphAssert.hasRootDependency(swiftCollections);
    graphAssert.hasRootSize(1);
}
Also used : PackageResolved(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageResolved) GraphAssert(com.synopsys.integration.detectable.util.graph.GraphAssert) ExternalId(com.synopsys.integration.bdio.model.externalid.ExternalId) PackageState(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageState) DependencyGraph(com.synopsys.integration.bdio.graph.DependencyGraph) ResolvedPackage(com.synopsys.integration.detectable.detectables.swift.lock.data.ResolvedPackage) Test(org.junit.jupiter.api.Test)

Example 2 with PackageState

use of com.synopsys.integration.detectable.detectables.swift.lock.data.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();
    DependencyGraph dependencyGraph = transformer.transform(packageResolved);
    GraphAssert graphAssert = new GraphAssert(Forge.GITHUB, dependencyGraph);
    ExternalId auth0 = ExternalId.FACTORY.createNameVersionExternalId(Forge.GITHUB, "auth0/Auth0.swift", "1.35.0");
    graphAssert.hasRootDependency(auth0);
    graphAssert.hasRootSize(1);
}
Also used : PackageResolved(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageResolved) GraphAssert(com.synopsys.integration.detectable.util.graph.GraphAssert) ExternalId(com.synopsys.integration.bdio.model.externalid.ExternalId) PackageState(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageState) DependencyGraph(com.synopsys.integration.bdio.graph.DependencyGraph) ResolvedPackage(com.synopsys.integration.detectable.detectables.swift.lock.data.ResolvedPackage) Test(org.junit.jupiter.api.Test)

Example 3 with PackageState

use of com.synopsys.integration.detectable.detectables.swift.lock.data.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();
    PackageResolved packageResolved = createPackageResolved(swiftLogPackage);
    DependencyGraph dependencyGraph = transformer.transform(packageResolved);
    GraphAssert graphAssert = new GraphAssert(Forge.GITHUB, dependencyGraph);
    ExternalId swiftLog = ExternalId.FACTORY.createNameVersionExternalId(Forge.GITHUB, "apple/swift-log", "1.4.2");
    graphAssert.hasRootDependency(swiftLog);
    graphAssert.hasRootSize(1);
}
Also used : PackageResolved(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageResolved) GraphAssert(com.synopsys.integration.detectable.util.graph.GraphAssert) ExternalId(com.synopsys.integration.bdio.model.externalid.ExternalId) PackageState(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageState) DependencyGraph(com.synopsys.integration.bdio.graph.DependencyGraph) ResolvedPackage(com.synopsys.integration.detectable.detectables.swift.lock.data.ResolvedPackage) Test(org.junit.jupiter.api.Test)

Example 4 with PackageState

use of com.synopsys.integration.detectable.detectables.swift.lock.data.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();
        return Optional.of(Dependency.FACTORY.createNameVersionDependency(Forge.GITHUB, name, version));
    } 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();
    }
}
Also used : MalformedURLException(java.net.MalformedURLException) PackageState(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageState)

Example 5 with PackageState

use of com.synopsys.integration.detectable.detectables.swift.lock.data.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();
    PackageResolved packageResolved = createPackageResolved(rSwiftLibraryPackage);
    DependencyGraph dependencyGraph = transformer.transform(packageResolved);
    GraphAssert graphAssert = new GraphAssert(Forge.GITHUB, dependencyGraph);
    ExternalId rSwiftLibrary = ExternalId.FACTORY.createNameVersionExternalId(Forge.GITHUB, "mac-cain13/R.swift.Library", "5.4.0");
    graphAssert.hasRootDependency(rSwiftLibrary);
    graphAssert.hasRootSize(1);
}
Also used : PackageResolved(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageResolved) GraphAssert(com.synopsys.integration.detectable.util.graph.GraphAssert) ExternalId(com.synopsys.integration.bdio.model.externalid.ExternalId) PackageState(com.synopsys.integration.detectable.detectables.swift.lock.data.PackageState) DependencyGraph(com.synopsys.integration.bdio.graph.DependencyGraph) ResolvedPackage(com.synopsys.integration.detectable.detectables.swift.lock.data.ResolvedPackage) Test(org.junit.jupiter.api.Test)

Aggregations

PackageState (com.synopsys.integration.detectable.detectables.swift.lock.data.PackageState)6 DependencyGraph (com.synopsys.integration.bdio.graph.DependencyGraph)5 PackageResolved (com.synopsys.integration.detectable.detectables.swift.lock.data.PackageResolved)5 ResolvedPackage (com.synopsys.integration.detectable.detectables.swift.lock.data.ResolvedPackage)5 GraphAssert (com.synopsys.integration.detectable.util.graph.GraphAssert)5 Test (org.junit.jupiter.api.Test)5 ExternalId (com.synopsys.integration.bdio.model.externalid.ExternalId)4 MalformedURLException (java.net.MalformedURLException)1