1 /*
 2  * Copyright 2017-2024 original authors
 3  *
 4  * Licensed under the Apache License, Version 2.0 (the "License");
 5  * you may not use this file except in compliance with the License.
 6  * You may obtain a copy of the License at
 7  *
 8  * https://www.apache.org/licenses/LICENSE-2.0
 9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package example.micronaut;
17 
18 import static org.junit.jupiter.api.Assertions.assertEquals;
19 import static org.junit.jupiter.api.Assertions.assertNotNull;
20 
21 import io.micronaut.http.HttpRequest;
22 import io.micronaut.http.MediaType;
23 import io.micronaut.http.client.HttpClient;
24 import io.micronaut.http.client.annotation.Client;
25 import io.micronaut.test.extensions.junit5.annotation.MicronautTest;
26 import org.junit.jupiter.api.Test;
27 
28 import jakarta.inject.Inject;
29 
30 @MicronautTest // <1>
31 public class HelloControllerTest {
32 
33     @Inject
34     @Client("/")  // <2>
35     HttpClient client;
36 
37     @Test
38     public void testHello() {
39         HttpRequest<?> request = HttpRequest.GET("/hello").accept(MediaType.TEXT_PLAIN);  // <3>
40         String body = client.toBlocking().retrieve(request);
41 
42         assertNotNull(body);
43         assertEquals("Hello World", body);
44     }
45 }