Browse Source

Ignore Serialization in Test Components

Since we don't need to ensure the serializability of test components
across versions, we can ignore missing version UIDs when those
test components aren't about testing Java serialization.

Issue gh-17038
pull/17042/head
Josh Cummings 8 months ago
parent
commit
c3c2bcd6b7
No known key found for this signature in database
GPG Key ID: 869B37A20E876129
  1. 10
      config/src/test/java/org/springframework/security/SpringSecurityCoreVersionSerializableTests.java
  2. 1
      config/src/test/java/org/springframework/security/config/annotation/method/configuration/Authz.java
  3. 5
      core/src/test/java/org/springframework/security/access/annotation/BusinessServiceImpl.java
  4. 5
      core/src/test/java/org/springframework/security/access/annotation/ExpressionProtectedBusinessServiceImpl.java
  5. 5
      core/src/test/java/org/springframework/security/access/annotation/Jsr250BusinessServiceImpl.java

10
config/src/test/java/org/springframework/security/SpringSecurityCoreVersionSerializableTests.java

@ -740,17 +740,11 @@ class SpringSecurityCoreVersionSerializableTests { @@ -740,17 +740,11 @@ class SpringSecurityCoreVersionSerializableTests {
}
}
static Stream<Path> getCurrentSerializedFiles() throws IOException {
static Stream<Path> getCurrentSerializedFiles() throws Exception {
assertThat(currentVersionFolder.toFile().exists())
.as("Make sure that the " + currentVersionFolder + " exists and is not empty")
.isTrue();
try (Stream<Path> files = Files.list(currentVersionFolder)) {
if (files.findFirst().isEmpty()) {
fail("Please make sure to run SpringSecurityCoreVersionSerializableTests#serializeCurrentVersionClasses for the "
+ getPreviousVersion() + " version");
}
}
return Files.list(currentVersionFolder);
return getClassesToSerialize().map((clazz) -> currentVersionFolder.resolve(clazz.getName() + ".serialized"));
}
@ParameterizedTest

1
config/src/test/java/org/springframework/security/config/annotation/method/configuration/Authz.java

@ -55,6 +55,7 @@ public class Authz { @@ -55,6 +55,7 @@ public class Authz {
return Mono.just(checkResult(result));
}
@SuppressWarnings("serial")
public static class AuthzResult extends AuthorizationDecision {
public AuthzResult(boolean granted) {

5
core/src/test/java/org/springframework/security/access/annotation/BusinessServiceImpl.java

@ -16,18 +16,15 @@ @@ -16,18 +16,15 @@
package org.springframework.security.access.annotation;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
/**
* @author Joe Scalise
*/
@SuppressWarnings("serial")
public class BusinessServiceImpl<E extends Entity> implements BusinessService {
@Serial
private static final long serialVersionUID = -4249394090237180795L;
@Override
@Secured({ "ROLE_USER" })
public void someUserMethod1() {

5
core/src/test/java/org/springframework/security/access/annotation/ExpressionProtectedBusinessServiceImpl.java

@ -16,7 +16,6 @@ @@ -16,7 +16,6 @@
package org.springframework.security.access.annotation;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
@ -24,11 +23,9 @@ import org.springframework.security.access.prepost.PostFilter; @@ -24,11 +23,9 @@ import org.springframework.security.access.prepost.PostFilter;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.security.access.prepost.PreFilter;
@SuppressWarnings("serial")
public class ExpressionProtectedBusinessServiceImpl implements BusinessService {
@Serial
private static final long serialVersionUID = -3320014879907436606L;
@Override
public void someAdminMethod() {
}

5
core/src/test/java/org/springframework/security/access/annotation/Jsr250BusinessServiceImpl.java

@ -16,7 +16,6 @@ @@ -16,7 +16,6 @@
package org.springframework.security.access.annotation;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
@ -27,11 +26,9 @@ import jakarta.annotation.security.RolesAllowed; @@ -27,11 +26,9 @@ import jakarta.annotation.security.RolesAllowed;
* @author Luke Taylor
*/
@PermitAll
@SuppressWarnings("serial")
public class Jsr250BusinessServiceImpl implements BusinessService {
@Serial
private static final long serialVersionUID = -7550211450382764339L;
@Override
@RolesAllowed("ROLE_USER")
public void someUserMethod1() {

Loading…
Cancel
Save