Align Formatting

Issue gh-13132
This commit is contained in:
Josh Cummings 2023-05-10 18:09:54 -06:00
parent 9669747245
commit 05ef215b88
2 changed files with 25 additions and 6 deletions

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2021 the original author or authors. * Copyright 2002-2023 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.

View File

@ -1,3 +1,19 @@
/*
* Copyright 2002-2023 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.security.authorization.method; package org.springframework.security.authorization.method;
import java.lang.reflect.Method; import java.lang.reflect.Method;
@ -5,6 +21,7 @@ import java.lang.reflect.Proxy;
import java.util.List; import java.util.List;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import static org.assertj.core.api.Assertions.assertThatNoException; import static org.assertj.core.api.Assertions.assertThatNoException;
@ -15,11 +32,10 @@ import static org.assertj.core.api.Assertions.assertThatNoException;
class AuthorizationAnnotationUtilsTests { class AuthorizationAnnotationUtilsTests {
@Test // gh-13132 @Test // gh-13132
public void annotationsOnSyntheticMethodsShouldNotTriggerAnnotationConfigurationException() void annotationsOnSyntheticMethodsShouldNotTriggerAnnotationConfigurationException() throws NoSuchMethodException {
throws NoSuchMethodException { StringRepository proxy = (StringRepository) Proxy.newProxyInstance(
StringRepository proxy = Thread.currentThread().getContextClassLoader(), new Class[] { StringRepository.class },
(StringRepository) Proxy.newProxyInstance(Thread.currentThread().getContextClassLoader(), (p, m, args) -> null);
new Class[] {StringRepository.class}, (p, m, args) -> null);
Method method = proxy.getClass().getDeclaredMethod("findAll"); Method method = proxy.getClass().getDeclaredMethod("findAll");
assertThatNoException() assertThatNoException()
.isThrownBy(() -> AuthorizationAnnotationUtils.findUniqueAnnotation(method, PreAuthorize.class)); .isThrownBy(() -> AuthorizationAnnotationUtils.findUniqueAnnotation(method, PreAuthorize.class));
@ -28,6 +44,7 @@ class AuthorizationAnnotationUtilsTests {
private interface BaseRepository<T> { private interface BaseRepository<T> {
Iterable<T> findAll(); Iterable<T> findAll();
} }
private interface StringRepository extends BaseRepository<String> { private interface StringRepository extends BaseRepository<String> {
@ -35,5 +52,7 @@ class AuthorizationAnnotationUtilsTests {
@Override @Override
@PreAuthorize("hasRole('someRole')") @PreAuthorize("hasRole('someRole')")
List<String> findAll(); List<String> findAll();
} }
} }