This is an automated email from the ASF dual-hosted git repository.
thiagohp pushed a commit to branch javax
in repository https://gitbox.apache.org/repos/asf/tapestry-5.git
The following commit(s) were added to refs/heads/javax by this push:
new 4f84b1e30 TAP5-2779: fixing broken ComponentDependencyRegistry tests
4f84b1e30 is described below
commit 4f84b1e30bd0cf2d3d5c86b9c95d6dc8deab0fb3
Author: Thiago H. de Paula Figueiredo <[email protected]>
AuthorDate: Sat Aug 3 22:36:59 2024 -0300
TAP5-2779: fixing broken ComponentDependencyRegistry tests
---
.../services/ComponentDependencyRegistryImpl.java | 11 +++++++++--
.../services/ComponentDependencyRegistryImplTest.java | 17 ++++++++++++-----
2 files changed, 21 insertions(+), 7 deletions(-)
diff --git
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImpl.java
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImpl.java
index fcaec091b..6c62350e0 100644
---
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImpl.java
+++
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImpl.java
@@ -1,4 +1,4 @@
-// Copyright 2022, 2023 The Apache Software Foundation
+// Copyright 2022, 2023, 2024 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -109,6 +109,8 @@ public class ComponentDependencyRegistryImpl implements
ComponentDependencyRegis
final private boolean storedDependencyInformationPresent;
+ private boolean enableEnsureClassIsAlreadyProcessed = true;
+
public ComponentDependencyRegistryImpl(
final PageClassLoaderContextManager pageClassLoaderContextManager,
final PlasticManager plasticManager,
@@ -819,9 +821,14 @@ public class ComponentDependencyRegistryImpl implements
ComponentDependencyRegis
INVALIDATIONS_DISABLED.set(0);
}
}
+
+ // Only for unit tests
+ void setEnableEnsureClassIsAlreadyProcessed(boolean
enableEnsureClassIsAlreadyProcessed) {
+ this.enableEnsureClassIsAlreadyProcessed =
enableEnsureClassIsAlreadyProcessed;
+ }
private void ensureClassIsAlreadyProcessed(String className) {
- if (!contains(className))
+ if (enableEnsureClassIsAlreadyProcessed && !contains(className))
{
ThrowawayClassLoader classLoader = new
ThrowawayClassLoader(getClass().getClassLoader());
try
diff --git
a/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImplTest.java
b/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImplTest.java
index 9c535be69..8115652dc 100644
---
a/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImplTest.java
+++
b/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImplTest.java
@@ -30,7 +30,6 @@ import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.function.BiConsumer;
-import java.util.function.Consumer;
import java.util.stream.Collectors;
import org.apache.tapestry5.commons.MappedConfiguration;
@@ -116,7 +115,6 @@ public class ComponentDependencyRegistryImplTest
private TemplateParser templateParser;
- @SuppressWarnings("deprecation")
private ComponentTemplateLocator componentTemplateLocator;
@BeforeMethod
@@ -238,6 +236,9 @@ public class ComponentDependencyRegistryImplTest
@Test(timeOut = 5000)
public void listen()
{
+
+
componentDependencyRegistry.setEnableEnsureClassIsAlreadyProcessed(false);
+
add("foo", "bar");
add("d", "a");
add("dd", "aa");
@@ -286,6 +287,8 @@ public class ComponentDependencyRegistryImplTest
final String beltrano = "beltrano";
final String sicrano = "sicrano";
+
componentDependencyRegistry.setEnableEnsureClassIsAlreadyProcessed(false);
+
assertEquals(
"getDependents() should never return null",
Collections.emptySet(),
@@ -395,6 +398,8 @@ public class ComponentDependencyRegistryImplTest
add(c, d, DependencyType.USAGE);
};
+
componentDependencyRegistry.setEnableEnsureClassIsAlreadyProcessed(false);
+
add(className, page, DependencyType.INJECT_PAGE);
add(className, superclass, DependencyType.SUPERCLASS);
@@ -420,6 +425,8 @@ public class ComponentDependencyRegistryImplTest
public void register()
{
+
componentDependencyRegistry.setEnableEnsureClassIsAlreadyProcessed(true);
+
componentDependencyRegistry.clear();
// Dynamic dependency definitions
@@ -491,13 +498,13 @@ public class ComponentDependencyRegistryImplTest
}
- private void assertDependencies(Class clasz, Class... dependencies) {
+ private void assertDependencies(Class<?> clasz, Class<?>... dependencies) {
assertEquals(
setOf(dependencies),
getDependencies(clasz.getName()));
}
- private static Set<String> setOf(Class ... classes)
+ private static Set<String> setOf(Class<?> ... classes)
{
return Arrays.asList(classes).stream()
.map(Class::getName)
@@ -514,6 +521,7 @@ public class ComponentDependencyRegistryImplTest
componentDependencyRegistry.add(component, dependency, type, true);
}
+ @SuppressWarnings("hiding")
private static final class MockMappedConfiguration<String, URL> implements
MappedConfiguration<String, URL>
{
@@ -559,7 +567,6 @@ public class ComponentDependencyRegistryImplTest
this.path = path;
}
- @SuppressWarnings("deprecation")
@Override
public java.net.URL toURL()
{