65 lines
1.7 KiB
Plaintext
65 lines
1.7 KiB
Plaintext
= WebTestClient Security Setup
|
|
|
|
The basic setup looks like this:
|
|
|
|
[tabs]
|
|
======
|
|
Java::
|
|
+
|
|
[source,java,role="primary"]
|
|
----
|
|
import static org.springframework.security.test.web.reactive.server.SecurityMockServerConfigurers.springSecurity;
|
|
import static org.springframework.web.reactive.function.client.ExchangeFilterFunctions.basicAuthentication;
|
|
|
|
@ExtendWith(SpringExtension.class)
|
|
@ContextConfiguration(classes = HelloWebfluxMethodApplication.class)
|
|
public class HelloWebfluxMethodApplicationTests {
|
|
@Autowired
|
|
ApplicationContext context;
|
|
|
|
WebTestClient rest;
|
|
|
|
@BeforeEach
|
|
public void setup() {
|
|
this.rest = WebTestClient
|
|
.bindToApplicationContext(this.context)
|
|
// add Spring Security test Support
|
|
.apply(springSecurity())
|
|
.configureClient()
|
|
.filter(basicAuthentication("user", "password"))
|
|
.build();
|
|
}
|
|
// ...
|
|
}
|
|
----
|
|
|
|
Kotlin::
|
|
+
|
|
[source,kotlin,role="secondary"]
|
|
----
|
|
import org.springframework.security.test.web.reactive.server.SecurityMockServerConfigurers.springSecurity
|
|
import org.springframework.web.reactive.function.client.ExchangeFilterFunctions.basicAuthentication
|
|
|
|
@ExtendWith(SpringExtension::class)
|
|
@ContextConfiguration(classes = [HelloWebfluxMethodApplication::class])
|
|
class HelloWebfluxMethodApplicationTests {
|
|
@Autowired
|
|
lateinit var context: ApplicationContext
|
|
|
|
lateinit var rest: WebTestClient
|
|
|
|
@BeforeEach
|
|
fun setup() {
|
|
this.rest = WebTestClient
|
|
.bindToApplicationContext(this.context)
|
|
// add Spring Security test Support
|
|
.apply(springSecurity())
|
|
.configureClient()
|
|
.filter(basicAuthentication("user", "password"))
|
|
.build()
|
|
}
|
|
// ...
|
|
}
|
|
----
|
|
======
|