blob: 5b6680228855e383ec2a64fb38b9afa79bf0078a [file] [log] [blame]
/*
* Copyright 2015-2022 the original author or authors.
*
* All rights reserved. This program and the accompanying materials are
* made available under the terms of the Eclipse Public License v2.0 which
* accompanies this distribution and is available at
*
* https://www.eclipse.org/legal/epl-v20.html
*/
package platform.tooling.support.tests;
import static org.junit.jupiter.api.Assertions.assertLinesMatch;
import java.nio.file.Files;
import java.util.List;
import org.junit.jupiter.api.Test;
import platform.tooling.support.MavenRepo;
/**
* @since 1.6
*/
class GradleModuleFileTests {
@Test
void jupiterAggregatorGradleModuleMetadataVariants() throws Exception {
var expected = List.of(">> HEAD >>", //
"{", //
" \"formatVersion\": \"1.1\",", //
" \"component\": {", //
" \"group\": \"org.junit.jupiter\",", //
" \"module\": \"junit-jupiter\",", //
">> VERSION >>", //
" \"attributes\": {", //
">> STATUS >>", //
" }", //
" },", //
">> CREATED_BY >>", //
" \"variants\": [", //
" {", //
" \"name\": \"apiElements\",", //
" \"attributes\": {", //
" \"org.gradle.category\": \"library\",", //
" \"org.gradle.dependency.bundling\": \"external\",", //
" \"org.gradle.jvm.version\": 8,", //
" \"org.gradle.libraryelements\": \"jar\",", //
" \"org.gradle.usage\": \"java-api\"", //
" },", //
" \"dependencies\": [", //
" {", //
" \"group\": \"org.junit\",", //
" \"module\": \"junit-bom\",", //
" \"version\": {", //
">> VERSION >>", //
" },", //
" \"attributes\": {", //
" \"org.gradle.category\": \"platform\"", //
" },", //
" \"endorseStrictVersions\": true", //
" },", //
" {", //
" \"group\": \"org.junit.jupiter\",", //
" \"module\": \"junit-jupiter-api\",", //
" \"version\": {", //
">> VERSION >>", //
" }", //
" },", //
" {", //
" \"group\": \"org.junit.jupiter\",", //
" \"module\": \"junit-jupiter-params\",", //
" \"version\": {", //
">> VERSION >>", //
" }", //
" }", //
" ],", //
" \"files\": [", //
" {", //
">> JAR_FILE_DETAILS >>", //
" }", //
" ]", //
" },", //
" {", //
" \"name\": \"runtimeElements\",", //
" \"attributes\": {", //
" \"org.gradle.category\": \"library\",", //
" \"org.gradle.dependency.bundling\": \"external\",", //
" \"org.gradle.jvm.version\": 8,", //
" \"org.gradle.libraryelements\": \"jar\",", //
" \"org.gradle.usage\": \"java-runtime\"", //
" },", //
" \"dependencies\": [", //
" {", //
" \"group\": \"org.junit\",", //
" \"module\": \"junit-bom\",", //
" \"version\": {", //
">> VERSION >>", //
" },", //
" \"attributes\": {", //
" \"org.gradle.category\": \"platform\"", //
" },", //
" \"endorseStrictVersions\": true", //
" },", //
" {", //
" \"group\": \"org.junit.jupiter\",", //
" \"module\": \"junit-jupiter-api\",", //
" \"version\": {", //
">> VERSION >>", //
" }", //
" },", //
" {", //
" \"group\": \"org.junit.jupiter\",", //
" \"module\": \"junit-jupiter-params\",", //
" \"version\": {", //
">> VERSION >>", //
" }", //
" },", //
" {", //
" \"group\": \"org.junit.jupiter\",", //
" \"module\": \"junit-jupiter-engine\",", //
" \"version\": {", //
">> VERSION >>", //
" }", //
" }", //
" ],", //
" \"files\": [", //
" {", //
">> JAR_FILE_DETAILS >>", //
" }", //
" ]", //
" },", //
" {", //
" \"name\": \"javadocElements\",", //
" \"attributes\": {", //
" \"org.gradle.category\": \"documentation\",", //
" \"org.gradle.dependency.bundling\": \"external\",", //
" \"org.gradle.docstype\": \"javadoc\",", //
" \"org.gradle.usage\": \"java-runtime\"", //
" },", //
" \"files\": [", //
" {", //
">> JAR_FILE_DETAILS >>", //
" }", //
" ]", //
" },", //
" {", //
" \"name\": \"sourcesElements\",", //
" \"attributes\": {", //
" \"org.gradle.category\": \"documentation\",", //
" \"org.gradle.dependency.bundling\": \"external\",", //
" \"org.gradle.docstype\": \"sources\",", //
" \"org.gradle.usage\": \"java-runtime\"", //
" },", //
" \"files\": [", //
" {", //
">> JAR_FILE_DETAILS >>", //
" }", //
" ]", //
" }", //
" ]", //
"}");
assertLinesMatch(expected, Files.readAllLines(MavenRepo.gradleModuleMetadata("junit-jupiter")));
}
}