private Dependency determineWebDependency(InitializrMetadata metadata) { Dependency web = metadata.getDependencies().get("web"); if (web != null) { return web; } return Dependency.withId("web").asSpringBootStarter("web"); }
@Test void mergeAddEntry() { DependenciesCapability capability = createDependenciesCapability("foo", Dependency.withId("first"), Dependency.withId("second")); DependenciesCapability anotherCapability = createDependenciesCapability("foo", Dependency.withId("bar"), Dependency.withId("biz")); anotherCapability.getContent() .add(createDependencyGroup("bar", Dependency.withId("third"))); capability.merge(anotherCapability); assertThat(capability.getContent()).hasSize(2); assertThat(capability.get("first")).isNotNull(); assertThat(capability.get("second")).isNotNull(); assertThat(capability.get("third")).isNotNull(); }
@Test void addDefaultBom() { Dependency first = Dependency.withId("first"); Dependency second = Dependency.withId("second"); second.setBom("da-bom"); DependencyGroup group = createDependencyGroup("test", first, second); group.setBom("test-bom"); DependenciesCapability capability = new DependenciesCapability(); capability.getContent().add(group); capability.validate(); assertThat(capability.get("first").getBom()).isEqualTo("test-bom"); assertThat(capability.get("second").getBom()).isEqualTo("da-bom"); }
@Test void addDependencyWithAliases() { Dependency dependency = Dependency.withId("first"); dependency.getAliases().add("alias1"); dependency.getAliases().add("alias2"); DependenciesCapability capability = createDependenciesCapability("foo", dependency); capability.validate(); assertThat(capability.get("first")).isSameAs(dependency); assertThat(capability.get("alias1")).isSameAs(dependency); assertThat(capability.get("alias2")).isSameAs(dependency); }
@Test void addDefaultVersionRange() { Dependency first = Dependency.withId("first"); Dependency second = Dependency.withId("second"); second.setVersionRange("1.2.3.RELEASE"); DependencyGroup group = createDependencyGroup("test", first, second); group.setVersionRange("1.2.0.RELEASE"); DependenciesCapability capability = new DependenciesCapability(); capability.getContent().add(group); capability.validate(); assertThat(capability.get("first").getVersionRange()).isEqualTo("1.2.0.RELEASE"); assertThat(capability.get("second").getVersionRange()).isEqualTo("1.2.3.RELEASE"); }
@Test void indexedDependencies() { Dependency dependency = Dependency.withId("first"); Dependency dependency2 = Dependency.withId("second"); DependenciesCapability capability = createDependenciesCapability("foo", dependency, dependency2); capability.validate(); assertThat(capability.get("first")).isSameAs(dependency); assertThat(capability.get("second")).isSameAs(dependency2); assertThat(capability.get("anotherId")).isNull(); }
@Test void addDefaultRepository() { Dependency first = Dependency.withId("first"); Dependency second = Dependency.withId("second"); second.setRepository("da-repo"); DependencyGroup group = createDependencyGroup("test", first, second); group.setRepository("test-repo"); DependenciesCapability capability = new DependenciesCapability(); capability.getContent().add(group); capability.validate(); assertThat(capability.get("first").getRepository()).isEqualTo("test-repo"); assertThat(capability.get("second").getRepository()).isEqualTo("da-repo"); }
dependencies.addAll(request.getDependencies()); List<String> validDependencies = dependencies.stream() .filter((id) -> metadata.getDependencies().get(id) != null) .collect(Collectors.toList()); document.setDependencies(new DependencyInformation(validDependencies));
@Test void mergeMetadata() { InitializrMetadata metadata = InitializrMetadataBuilder.create() .withInitializrMetadata( new ClassPathResource("metadata/config/test-min.json")) .build(); assertThat(metadata.getConfiguration().getEnv().isForceSsl()).isEqualTo(true); assertThat(metadata.getDependencies().getContent()).hasSize(1); Dependency dependency = metadata.getDependencies().get("test"); assertThat(dependency).isNotNull(); assertThat(dependency.getGroupId()).isEqualTo("org.springframework.boot"); assertThat(metadata.getTypes().getContent()).hasSize(1); assertThat(metadata.getBootVersions().getContent()).hasSize(2); assertThat(metadata.getPackagings().getContent()).hasSize(2); assertThat(metadata.getJavaVersions().getContent()).hasSize(1); assertThat(metadata.getLanguages().getContent()).hasSize(3); assertThat(metadata.getName().getContent()).isEqualTo("metadata-merge"); assertThat(metadata.getDescription().getContent()) .isEqualTo("Demo project for metadata merge"); assertThat(metadata.getGroupId().getContent()).isEqualTo("org.acme"); assertThat(metadata.getArtifactId().getContent()).isEqualTo("metadata"); assertThat(metadata.getVersion().getContent()).isEqualTo("1.0.0-SNAPSHOT"); assertThat(metadata.getPackageName().getContent()).isEqualTo("org.acme.demo"); }
Version requestedVersion = Version.parse(actualBootVersion); this.resolvedDependencies = depIds.stream().map((it) -> { Dependency dependency = metadata.getDependencies().get(it); if (dependency == null) { throw new InvalidProjectRequestException(
.resolve(Version.parse("1.3.7.BUILD-SNAPSHOT")).getVersion()) .isEqualTo("1.1.0-BUILD-SNAPSHOT"); assertThat(metadata.getDependencies().get("bar") .resolve(Version.parse("1.3.6.RELEASE")).getVersion()) .isEqualTo("0.1.0.RELEASE"); assertThat(metadata.getDependencies().get("bar") .resolve(Version.parse("1.3.7.BUILD-SNAPSHOT")).getVersion()) .isEqualTo("0.2.0.RELEASE");
dependencies.addAll(request.getDependencies()); dependencies.forEach((id) -> { if (metadata.getDependencies().get(id) != null) { document.getDependencies().add(id);