1+ /*
2+ *
3+ * * Copyright 2019-2020 the original author or authors.
4+ * *
5+ * * Licensed under the Apache License, Version 2.0 (the "License");
6+ * * you may not use this file except in compliance with the License.
7+ * * You may obtain a copy of the License at
8+ * *
9+ * * https://www.apache.org/licenses/LICENSE-2.0
10+ * *
11+ * * Unless required by applicable law or agreed to in writing, software
12+ * * distributed under the License is distributed on an "AS IS" BASIS,
13+ * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+ * * See the License for the specific language governing permissions and
15+ * * limitations under the License.
16+ *
17+ */
18+
19+ package test .org .springdoc .ui .app4 ;
20+
21+ import org .hamcrest .Matchers ;
22+ import org .junit .jupiter .api .Test ;
23+ import test .org .springdoc .ui .AbstractSpringDocTest ;
24+
25+ import org .springframework .boot .autoconfigure .SpringBootApplication ;
26+ import org .springframework .test .context .TestPropertySource ;
27+ import org .springframework .test .web .reactive .server .WebTestClient ;
28+
29+ @ TestPropertySource (properties = {
30+ "springdoc.swagger-ui.path=/"
31+ })
32+ public class SpringDocOauthBasePathsTest extends AbstractSpringDocTest {
33+
34+ @ Test
35+ public void test_oauth2_default_base_path () throws Exception {
36+
37+ WebTestClient .ResponseSpec responseSpec = webTestClient .get ().uri ("/" ).exchange ()
38+ .expectStatus ().isTemporaryRedirect ();
39+ responseSpec .expectHeader ()
40+ .value ("Location" , Matchers .is ("/webjars/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config" ));
41+
42+ webTestClient .get ().uri ("/v3/api-docs/swagger-config" ).exchange ()
43+ .expectStatus ().isOk ().expectBody ()
44+ .jsonPath ("$.validatorUrl" ).isEqualTo ("" )
45+ .jsonPath ("$.oauth2RedirectUrl" ).isEqualTo ("/webjars/swagger-ui/oauth2-redirect.html" );
46+
47+ }
48+
49+
50+
51+ @ SpringBootApplication
52+ static class SpringDocTestApp {}
53+ }
0 commit comments