[jira] [Commented] (MBUILDCACHE-88) Tests in failure when ran on jdk21
[ https://issues.apache.org/jira/browse/MBUILDCACHE-88?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17841862#comment-17841862 ] ASF GitHub Bot commented on MBUILDCACHE-88: --- kbuntrock commented on PR #147: URL: https://github.com/apache/maven-build-cache-extension/pull/147#issuecomment-2081974049 @olamy: thank you :) > Tests in failure when ran on jdk21 > -- > > Key: MBUILDCACHE-88 > URL: https://issues.apache.org/jira/browse/MBUILDCACHE-88 > Project: Maven Build Cache Extension > Issue Type: Bug >Affects Versions: 1.1.0 >Reporter: Kevin Buntrock >Assignee: Olivier Lamy >Priority: Minor > Labels: pull-request-available > Fix For: 1.2.0 > > > The project tests cannot be run on jdk21. Result is : > {code:java} > [INFO] > [INFO] Results: > [INFO] > [ERROR] Failures: > [ERROR] CacheConfigImplTest.testInitializationDisabledInXML:234 expected: > but was: > [ERROR] > CacheConfigImplTest.testRemoteDisableByUserPropertyOverride:330->assertDefaults:137->assertDefaults:201->lambda$testRemoteDisableByUserPropertyOverride$39:330 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableByUserPropertyOverrideWithURL:313->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableByUserPropertyOverrideWithURL$38:315 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableInXMLWithURL:288->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableInXMLWithURL$36:290 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride:420->assertDefaults:137->assertDefaults:201->lambda$testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride$48:420 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveDisabledByUserProperty:381->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveDisabledByUserProperty$47:383 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledByUserProperty:362->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledByUserProperty$45:365 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledInXML:344->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledInXML$42:347 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalEnabledByUserProperty:436->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalEnabledByUserProperty$51:439 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled:455->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled$54:457 > expected: but was: > [INFO] > [ERROR] Tests run: 71, Failures: 10, Errors: 0, Skipped: 4 > [INFO] > [INFO] > > [INFO] BUILD FAILURE > [INFO] > {code} > In class "CacheConfigImplTest", a method "deepMockConfigFile" mocks the > result of the call to java.nio.file.Files.exists (via > "FileSystemProvider.checkAccess"). > In jdk21 version, "Files.exists" does not rely on the same underlying > "FileSystemProvider" method, therefore breaking the mocking purpose. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MBUILDCACHE-88) Tests in failure when ran on jdk21
[ https://issues.apache.org/jira/browse/MBUILDCACHE-88?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17841784#comment-17841784 ] ASF GitHub Bot commented on MBUILDCACHE-88: --- olamy merged PR #147: URL: https://github.com/apache/maven-build-cache-extension/pull/147 > Tests in failure when ran on jdk21 > -- > > Key: MBUILDCACHE-88 > URL: https://issues.apache.org/jira/browse/MBUILDCACHE-88 > Project: Maven Build Cache Extension > Issue Type: Bug >Affects Versions: 1.1.0 >Reporter: Kevin Buntrock >Priority: Minor > Labels: pull-request-available > > The project tests cannot be run on jdk21. Result is : > {code:java} > [INFO] > [INFO] Results: > [INFO] > [ERROR] Failures: > [ERROR] CacheConfigImplTest.testInitializationDisabledInXML:234 expected: > but was: > [ERROR] > CacheConfigImplTest.testRemoteDisableByUserPropertyOverride:330->assertDefaults:137->assertDefaults:201->lambda$testRemoteDisableByUserPropertyOverride$39:330 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableByUserPropertyOverrideWithURL:313->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableByUserPropertyOverrideWithURL$38:315 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableInXMLWithURL:288->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableInXMLWithURL$36:290 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride:420->assertDefaults:137->assertDefaults:201->lambda$testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride$48:420 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveDisabledByUserProperty:381->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveDisabledByUserProperty$47:383 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledByUserProperty:362->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledByUserProperty$45:365 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledInXML:344->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledInXML$42:347 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalEnabledByUserProperty:436->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalEnabledByUserProperty$51:439 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled:455->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled$54:457 > expected: but was: > [INFO] > [ERROR] Tests run: 71, Failures: 10, Errors: 0, Skipped: 4 > [INFO] > [INFO] > > [INFO] BUILD FAILURE > [INFO] > {code} > In class "CacheConfigImplTest", a method "deepMockConfigFile" mocks the > result of the call to java.nio.file.Files.exists (via > "FileSystemProvider.checkAccess"). > In jdk21 version, "Files.exists" does not rely on the same underlying > "FileSystemProvider" method, therefore breaking the mocking purpose. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MBUILDCACHE-88) Tests in failure when ran on jdk21
[ https://issues.apache.org/jira/browse/MBUILDCACHE-88?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17840995#comment-17840995 ] ASF GitHub Bot commented on MBUILDCACHE-88: --- kbuntrock commented on code in PR #147: URL: https://github.com/apache/maven-build-cache-extension/pull/147#discussion_r1580192169 ## src/test/java/org/apache/maven/buildcache/xml/CacheConfigImplTest.java: ## @@ -122,11 +126,30 @@ private static void deepMockConfigFile(File mockFile, boolean exists) throws IOE when(mockPath.getFileSystem()).thenReturn(mockFileSystem); FileSystemProvider mockProvider = mock(FileSystemProvider.class); when(mockFileSystem.provider()).thenReturn(mockProvider); + +// Mock for java < 20. if (!exists) { doThrow(new IOException("mock IOException")) .when(mockProvider) .checkAccess(ArgumentMatchers.eq(mockPath), ArgumentMatchers.any(AccessMode.class)); } + +// Mock for java >= 20. Since the FileSystemProvider.exists method does not exist before v20, we use reflection +// to create the mock +Optional methodToMock = Arrays.stream(FileSystemProvider.class.getDeclaredMethods()) +.filter(method -> "exists".equals(method.getName())) +.findAny(); +if (methodToMock.isPresent()) { +Class[] paramTypes = methodToMock.get().getParameterTypes(); +Object[] params = Arrays.stream(paramTypes) +.map(paramType -> Mockito.any(paramType)) +.toArray(); +try { +Mockito.when(methodToMock.get().invoke(mockProvider, params)).thenReturn(exists); Review Comment: Yes, it is used internally by the static `java.nio.file.Files#exists` method. Implementation differs from jdk versions. > Tests in failure when ran on jdk21 > -- > > Key: MBUILDCACHE-88 > URL: https://issues.apache.org/jira/browse/MBUILDCACHE-88 > Project: Maven Build Cache Extension > Issue Type: Bug >Affects Versions: 1.1.0 >Reporter: Kevin Buntrock >Priority: Minor > Labels: pull-request-available > > The project tests cannot be run on jdk21. Result is : > {code:java} > [INFO] > [INFO] Results: > [INFO] > [ERROR] Failures: > [ERROR] CacheConfigImplTest.testInitializationDisabledInXML:234 expected: > but was: > [ERROR] > CacheConfigImplTest.testRemoteDisableByUserPropertyOverride:330->assertDefaults:137->assertDefaults:201->lambda$testRemoteDisableByUserPropertyOverride$39:330 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableByUserPropertyOverrideWithURL:313->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableByUserPropertyOverrideWithURL$38:315 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableInXMLWithURL:288->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableInXMLWithURL$36:290 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride:420->assertDefaults:137->assertDefaults:201->lambda$testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride$48:420 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveDisabledByUserProperty:381->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveDisabledByUserProperty$47:383 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledByUserProperty:362->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledByUserProperty$45:365 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledInXML:344->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledInXML$42:347 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalEnabledByUserProperty:436->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalEnabledByUserProperty$51:439 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled:455->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled$54:457 > expected: but was: > [INFO] > [ERROR] Tests run: 71, Failures: 10, Errors: 0, Skipped: 4 > [INFO] > [INFO] > > [INFO] BUILD FAILURE > [INFO] > {code} > In class "CacheConfigImplTest", a method "deepMockConfigFile" mocks the > result of the call to java.nio.file.Files.exists (via > "FileSystemProvider.checkAccess"). > In jdk21 version, "Files.exists" does not rely on the same underlying > "FileSystemProvider" method, therefore breaking the mocking purpose. -- Th
[jira] [Commented] (MBUILDCACHE-88) Tests in failure when ran on jdk21
[ https://issues.apache.org/jira/browse/MBUILDCACHE-88?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17840936#comment-17840936 ] ASF GitHub Bot commented on MBUILDCACHE-88: --- AlexanderAshitkin commented on code in PR #147: URL: https://github.com/apache/maven-build-cache-extension/pull/147#discussion_r1580025685 ## src/test/java/org/apache/maven/buildcache/xml/CacheConfigImplTest.java: ## @@ -122,11 +126,30 @@ private static void deepMockConfigFile(File mockFile, boolean exists) throws IOE when(mockPath.getFileSystem()).thenReturn(mockFileSystem); FileSystemProvider mockProvider = mock(FileSystemProvider.class); when(mockFileSystem.provider()).thenReturn(mockProvider); + +// Mock for java < 20. if (!exists) { doThrow(new IOException("mock IOException")) .when(mockProvider) .checkAccess(ArgumentMatchers.eq(mockPath), ArgumentMatchers.any(AccessMode.class)); } + +// Mock for java >= 20. Since the FileSystemProvider.exists method does not exist before v20, we use reflection +// to create the mock +Optional methodToMock = Arrays.stream(FileSystemProvider.class.getDeclaredMethods()) +.filter(method -> "exists".equals(method.getName())) +.findAny(); +if (methodToMock.isPresent()) { +Class[] paramTypes = methodToMock.get().getParameterTypes(); +Object[] params = Arrays.stream(paramTypes) +.map(paramType -> Mockito.any(paramType)) +.toArray(); +try { +Mockito.when(methodToMock.get().invoke(mockProvider, params)).thenReturn(exists); Review Comment: Looks correct, but why need to Mock it at all? If it is not present in java 17, we are not using it in code. Is it used by JDK 20 internally? > Tests in failure when ran on jdk21 > -- > > Key: MBUILDCACHE-88 > URL: https://issues.apache.org/jira/browse/MBUILDCACHE-88 > Project: Maven Build Cache Extension > Issue Type: Bug >Affects Versions: 1.1.0 >Reporter: Kevin Buntrock >Priority: Minor > Labels: pull-request-available > > The project tests cannot be run on jdk21. Result is : > {code:java} > [INFO] > [INFO] Results: > [INFO] > [ERROR] Failures: > [ERROR] CacheConfigImplTest.testInitializationDisabledInXML:234 expected: > but was: > [ERROR] > CacheConfigImplTest.testRemoteDisableByUserPropertyOverride:330->assertDefaults:137->assertDefaults:201->lambda$testRemoteDisableByUserPropertyOverride$39:330 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableByUserPropertyOverrideWithURL:313->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableByUserPropertyOverrideWithURL$38:315 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableInXMLWithURL:288->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableInXMLWithURL$36:290 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride:420->assertDefaults:137->assertDefaults:201->lambda$testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride$48:420 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveDisabledByUserProperty:381->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveDisabledByUserProperty$47:383 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledByUserProperty:362->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledByUserProperty$45:365 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledInXML:344->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledInXML$42:347 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalEnabledByUserProperty:436->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalEnabledByUserProperty$51:439 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled:455->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled$54:457 > expected: but was: > [INFO] > [ERROR] Tests run: 71, Failures: 10, Errors: 0, Skipped: 4 > [INFO] > [INFO] > > [INFO] BUILD FAILURE > [INFO] > {code} > In class "CacheConfigImplTest", a method "deepMockConfigFile" mocks the > result of the call to java.nio.file.Files.exists (via > "FileSystemProvider.checkAccess"). > In jdk21 version, "Files.exists" does not rely on the same underlying > "FileSystemProvider" method, therefore breaking the m
[jira] [Commented] (MBUILDCACHE-88) Tests in failure when ran on jdk21
[ https://issues.apache.org/jira/browse/MBUILDCACHE-88?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17840571#comment-17840571 ] ASF GitHub Bot commented on MBUILDCACHE-88: --- kbuntrock commented on PR #147: URL: https://github.com/apache/maven-build-cache-extension/pull/147#issuecomment-2075794776 > Thanks for this. To be sure this is tested maybe you could add build on jdk21 for both GHA and Jenkins. Thanks I tried very empirically to add a jdk21 string to the GHA actions files and Jenkins, but I have no idea how to try theses changes: - I guess github actions workflows needs an approval before running? - And Jenkins access requires an account. Is there an entry point to create an account? PS : I will squash all the extra commits when the devs are done > Tests in failure when ran on jdk21 > -- > > Key: MBUILDCACHE-88 > URL: https://issues.apache.org/jira/browse/MBUILDCACHE-88 > Project: Maven Build Cache Extension > Issue Type: Bug >Affects Versions: 1.1.0 >Reporter: Kevin Buntrock >Priority: Minor > Labels: pull-request-available > > The project tests cannot be run on jdk21. Result is : > {code:java} > [INFO] > [INFO] Results: > [INFO] > [ERROR] Failures: > [ERROR] CacheConfigImplTest.testInitializationDisabledInXML:234 expected: > but was: > [ERROR] > CacheConfigImplTest.testRemoteDisableByUserPropertyOverride:330->assertDefaults:137->assertDefaults:201->lambda$testRemoteDisableByUserPropertyOverride$39:330 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableByUserPropertyOverrideWithURL:313->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableByUserPropertyOverrideWithURL$38:315 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableInXMLWithURL:288->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableInXMLWithURL$36:290 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride:420->assertDefaults:137->assertDefaults:201->lambda$testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride$48:420 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveDisabledByUserProperty:381->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveDisabledByUserProperty$47:383 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledByUserProperty:362->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledByUserProperty$45:365 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledInXML:344->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledInXML$42:347 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalEnabledByUserProperty:436->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalEnabledByUserProperty$51:439 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled:455->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled$54:457 > expected: but was: > [INFO] > [ERROR] Tests run: 71, Failures: 10, Errors: 0, Skipped: 4 > [INFO] > [INFO] > > [INFO] BUILD FAILURE > [INFO] > {code} > In class "CacheConfigImplTest", a method "deepMockConfigFile" mocks the > result of the call to java.nio.file.Files.exists (via > "FileSystemProvider.checkAccess"). > In jdk21 version, "Files.exists" does not rely on the same underlying > "FileSystemProvider" method, therefore breaking the mocking purpose. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MBUILDCACHE-88) Tests in failure when ran on jdk21
[ https://issues.apache.org/jira/browse/MBUILDCACHE-88?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17840231#comment-17840231 ] ASF GitHub Bot commented on MBUILDCACHE-88: --- olamy commented on PR #147: URL: https://github.com/apache/maven-build-cache-extension/pull/147#issuecomment-2073450704 Thanks for this. To be sure this is tested maybe you could add build on jdk21 for both GHA and Jenkins. Thanks > Tests in failure when ran on jdk21 > -- > > Key: MBUILDCACHE-88 > URL: https://issues.apache.org/jira/browse/MBUILDCACHE-88 > Project: Maven Build Cache Extension > Issue Type: Bug >Affects Versions: 1.1.0 >Reporter: Kevin Buntrock >Priority: Minor > Labels: pull-request-available > > The project tests cannot be run on jdk21. Result is : > {code:java} > [INFO] > [INFO] Results: > [INFO] > [ERROR] Failures: > [ERROR] CacheConfigImplTest.testInitializationDisabledInXML:234 expected: > but was: > [ERROR] > CacheConfigImplTest.testRemoteDisableByUserPropertyOverride:330->assertDefaults:137->assertDefaults:201->lambda$testRemoteDisableByUserPropertyOverride$39:330 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableByUserPropertyOverrideWithURL:313->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableByUserPropertyOverrideWithURL$38:315 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableInXMLWithURL:288->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableInXMLWithURL$36:290 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride:420->assertDefaults:137->assertDefaults:201->lambda$testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride$48:420 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveDisabledByUserProperty:381->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveDisabledByUserProperty$47:383 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledByUserProperty:362->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledByUserProperty$45:365 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledInXML:344->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledInXML$42:347 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalEnabledByUserProperty:436->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalEnabledByUserProperty$51:439 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled:455->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveFinalIgnoredWhenRemoteSaveDisabled$54:457 > expected: but was: > [INFO] > [ERROR] Tests run: 71, Failures: 10, Errors: 0, Skipped: 4 > [INFO] > [INFO] > > [INFO] BUILD FAILURE > [INFO] > {code} > In class "CacheConfigImplTest", a method "deepMockConfigFile" mocks the > result of the call to java.nio.file.Files.exists (via > "FileSystemProvider.checkAccess"). > In jdk21 version, "Files.exists" does not rely on the same underlying > "FileSystemProvider" method, therefore breaking the mocking purpose. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MBUILDCACHE-88) Tests in failure when ran on jdk21
[ https://issues.apache.org/jira/browse/MBUILDCACHE-88?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17839854#comment-17839854 ] ASF GitHub Bot commented on MBUILDCACHE-88: --- kbuntrock opened a new pull request, #147: URL: https://github.com/apache/maven-build-cache-extension/pull/147 The project tests cannot be run on a jdk21. See : https://issues.apache.org/jira/browse/MBUILDCACHE-88 Please not that this fix does not address the comment line 123 of `CacheConfigImplTest.class` : `// unfortunate and potentially fragile deep mocking, but helps avoid most disk involvement while working around // the static nio Files.exists method` The mock implementation can still be considered as fragile. -- Following this checklist to help us incorporate your contribution quickly and easily: - [x] Make sure there is a [MBUILDCACHE JIRA issue](https://issues.apache.org/jira/browse/MBUILDCACHE) filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes. - [x] Each commit in the pull request should have a meaningful subject line and body. - [x] Format the pull request title like `[MBUILDCACHE-XXX] - Fixes bug in ApproximateQuantiles`, where you replace `MBUILDCACHE-XXX` with the appropriate JIRA issue. Best practice is to use the JIRA issue title in the pull request title and in the first line of the commit message. - [x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why. - [x] Run `mvn clean verify` to make sure basic checks pass. A more thorough check will be performed on your pull request automatically. - [x] You have run the [Core IT][core-its] successfully. If your pull request is about ~20 lines of code you don't need to sign an [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf) if you are unsure please ask on the developers list. To make clear that you license your contribution under the [Apache License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0) you have to acknowledge this by using the following check-box. - [x] I hereby declare this contribution to be licenced under the [Apache License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0) - [x] In any other case, please file an [Apache Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf). [core-its]: https://maven.apache.org/core-its/core-it-suite/ > Tests in failure when ran on jdk21 > -- > > Key: MBUILDCACHE-88 > URL: https://issues.apache.org/jira/browse/MBUILDCACHE-88 > Project: Maven Build Cache Extension > Issue Type: Bug >Affects Versions: 1.1.0 >Reporter: Kevin Buntrock >Priority: Minor > > The project tests cannot be run on jdk21. Result is : > {code:java} > [INFO] > [INFO] Results: > [INFO] > [ERROR] Failures: > [ERROR] CacheConfigImplTest.testInitializationDisabledInXML:234 expected: > but was: > [ERROR] > CacheConfigImplTest.testRemoteDisableByUserPropertyOverride:330->assertDefaults:137->assertDefaults:201->lambda$testRemoteDisableByUserPropertyOverride$39:330 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableByUserPropertyOverrideWithURL:313->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableByUserPropertyOverrideWithURL$38:315 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteEnableInXMLWithURL:288->assertDefaults:137->assertDefaults:201->lambda$testRemoteEnableInXMLWithURL$36:290 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride:420->assertDefaults:137->assertDefaults:201->lambda$testRemoteSaveIgnoredWhenRemoteDisabledByUserPropertyOverride$48:420 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveDisabledByUserProperty:381->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveDisabledByUserProperty$47:383 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledByUserProperty:362->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledByUserProperty$45:365 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveEnabledInXML:344->assertDefaults:137->assertDefaults:201->lambda$testRemoveSaveEnabledInXML$42:347 > expected: but was: > [ERROR] > CacheConfigImplTest.testRemoveSaveFinalEnabledByUserProperty:436->assertDefaults:137->assertDefau