diff --git a/ragconnect.base/src/main/jastadd/Navigation.jrag b/ragconnect.base/src/main/jastadd/Navigation.jrag index 5288a9f14f2cc8e3298d3d20fa53076fd72be09e..4119bcc6d9bf23020b5fd7d83f49c074f1a2c5f0 100644 --- a/ragconnect.base/src/main/jastadd/Navigation.jrag +++ b/ragconnect.base/src/main/jastadd/Navigation.jrag @@ -111,6 +111,9 @@ aspect RagConnectNavigation { // return containedFile().getFileName(); } + // --- isFirstInList --- + inh boolean DependencyDefinition.isFirstInList(); + eq ConnectSpecification.getDependencyDefinition(int index).isFirstInList() = index == 0; //--- givenEndpointTargetList --- syn List<EndpointTarget> RagConnect.givenEndpointTargetList() { diff --git a/ragconnect.base/src/main/jastadd/Warnings.jrag b/ragconnect.base/src/main/jastadd/Warnings.jrag index 351fb19eac5a41930c7e8ba64aa6b151bdcf7d78..8ef06c6f3738e22dcfb66018c333b3c079304ca5 100644 --- a/ragconnect.base/src/main/jastadd/Warnings.jrag +++ b/ragconnect.base/src/main/jastadd/Warnings.jrag @@ -7,6 +7,10 @@ aspect Warnings { when ragconnect().configIncrementalOptionActive() to RagConnect.warnings(); + DependencyDefinition contributes warning("Dependency definition are deprecated since 1.0.0!") + when this.isFirstInList() // print warning only once for first dependency definition + to RagConnect.warnings(); + EndpointDefinition contributes warning("No dependency definitions are given, and incremental evaluation is disabled. No messages will be sent for this!") when getSend() && ragconnect().allDependencyDefinitionList().isEmpty() && !ragconnect().configIncrementalOptionActive() to RagConnect.warnings(); diff --git a/ragconnect.base/src/main/resources/dependencyDefinition.mustache b/ragconnect.base/src/main/resources/dependencyDefinition.mustache index 891935029b5c5345df4dd7546705af347a422a5e..7c2ac5ab06d2e52f5f2ba5a086167c815ac5254a 100644 --- a/ragconnect.base/src/main/resources/dependencyDefinition.mustache +++ b/ragconnect.base/src/main/resources/dependencyDefinition.mustache @@ -1,3 +1,7 @@ +/** +* @deprecated Manual dependency definitions are not fully tested any longer since 1.0.0, see <a href="https://jastadd.pages.st.inf.tu-dresden.de/ragconnect-dev/dsl/#dependency-definitions">https://jastadd.pages.st.inf.tu-dresden.de/ragconnect-dev/dsl/#dependency-definitions</a> +*/ +@Deprecated(since = "1.0.0") public void {{targetParentTypeName}}.{{dependencyMethodName}}({{sourceParentTypeName}} source) { add{{internalRelationPrefix}}Source(source); } diff --git a/ragconnect.tests/build.gradle b/ragconnect.tests/build.gradle index 5068a66dbc306052951b3b076879dc1ca3edcd83..0b5fc98a9dae3b488e5f9b1a6a3cfe5334856472 100644 --- a/ragconnect.tests/build.gradle +++ b/ragconnect.tests/build.gradle @@ -49,9 +49,9 @@ dependencies { implementation group: 'org.jastadd', name: 'jastadd2', version: '2.3.5-dresden-7' relast group: 'org.jastadd', name: 'relast', version: "0.3.0-137" - testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.4.0' - testRuntimeOnly group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.4.0' - testImplementation group: 'org.assertj', name: 'assertj-core', version: '3.12.1' + testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.9.0' + testRuntimeOnly group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.9.0' + testImplementation group: 'org.assertj', name: 'assertj-core', version: '3.23.1' testImplementation group: 'org.awaitility', name: 'awaitility', version: '4.1.1' testImplementation group: 'io.github.artsok', name: 'rerunner-jupiter', version: '2.1.6' diff --git a/ragconnect.tests/src/test/01-input/warnings/SomeDependenciesAndInc.expected b/ragconnect.tests/src/test/01-input/warnings/SomeDependenciesAndInc.expected index 15fab0001ee36aef1e9ba34db195f0e83db9066e..f1154cf41a38be8e3e54e7d1933837705e838ac4 100644 --- a/ragconnect.tests/src/test/01-input/warnings/SomeDependenciesAndInc.expected +++ b/ragconnect.tests/src/test/01-input/warnings/SomeDependenciesAndInc.expected @@ -1 +1,2 @@ +TestSomeDependencies.connect Line 3, column 1: Dependency definition are deprecated since 1.0.0! TestSomeDependencies.connect Line 3, column 1: Dependency definition should not be used if incremental evaluation is enabled! diff --git a/ragconnect.tests/src/test/01-input/warnings/SomeDependenciesAndNoIncAndCacheAll.expected b/ragconnect.tests/src/test/01-input/warnings/SomeDependenciesAndNoIncAndCacheAll.expected index 732463caf9bfabae3cefe5d2555cb8cc6b85870b..e4d442f74bfdcb87dbe720381cb8d05b51734527 100644 --- a/ragconnect.tests/src/test/01-input/warnings/SomeDependenciesAndNoIncAndCacheAll.expected +++ b/ragconnect.tests/src/test/01-input/warnings/SomeDependenciesAndNoIncAndCacheAll.expected @@ -1 +1,2 @@ TestSomeDependencies.connect Line 1, column 1: Incremental evaluation is disabled, but cache=all is set. This might lead to no messages sent! +TestSomeDependencies.connect Line 3, column 1: Dependency definition are deprecated since 1.0.0! diff --git a/ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/Errors.java b/ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/ErrorsTest.java similarity index 95% rename from ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/Errors.java rename to ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/ErrorsTest.java index 9d4c730ad3fa8a27e8de22a10f80d4594ff3dbf9..4b3f57355621ddb91a1f66b8662c7c36e2a8b30c 100644 --- a/ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/Errors.java +++ b/ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/ErrorsTest.java @@ -2,8 +2,6 @@ package org.jastadd.ragconnect.tests; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -22,7 +20,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue; * * @author rschoene - Initial contribution */ -public class Errors extends RagConnectTest { +public class ErrorsTest extends RagConnectTest { private static final String ERROR_DIRECTORY = "errors/"; private static final String OUTPUT_DIRECTORY = TestUtils.OUTPUT_DIRECTORY_PREFIX + ERROR_DIRECTORY; diff --git a/ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/Warnings.java b/ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/WarningsTest.java similarity index 94% rename from ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/Warnings.java rename to ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/WarningsTest.java index 121843c724d075318e483aa0ac072a53c64998e0..0ce33be11648a41cd3a6c84c7ca61e848551afa0 100644 --- a/ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/Warnings.java +++ b/ragconnect.tests/src/test/java/org/jastadd/ragconnect/tests/WarningsTest.java @@ -2,8 +2,6 @@ package org.jastadd.ragconnect.tests; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -21,7 +19,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue; * * @author rschoene - Initial contribution */ -public class Warnings extends RagConnectTest { +public class WarningsTest extends RagConnectTest { private static final String WARNING_DIRECTORY = "warnings/"; private static final String OUTPUT_DIRECTORY = TestUtils.OUTPUT_DIRECTORY_PREFIX + WARNING_DIRECTORY; @@ -86,8 +84,8 @@ public class Warnings extends RagConnectTest { out = out.substring(out.indexOf(startOfWarningsPattern) + startOfWarningsPattern.length()); - TestUtils.assertLinesMatch(WARNING_DIRECTORY, expectedName, out); + logger.debug("ragconnect for " + expectedName + " returned:\n{}", out); - logger.info("ragconnect for " + expectedName + " returned:\n{}", out); + TestUtils.assertLinesMatch(WARNING_DIRECTORY, expectedName, out); } }