View Javadoc
1   package webapi;
2   
3   import static org.junit.jupiter.api.Assertions.*;
4   
5   import java.net.URI;
6   import java.util.List;
7   
8   import org.eclipse.microprofile.rest.client.RestClientBuilder;
9   import org.junit.jupiter.api.BeforeAll;
10  import org.junit.jupiter.api.Test;
11  
12  import io.helidon.microprofile.tests.junit5.AddConfig;
13  import io.helidon.microprofile.tests.junit5.HelidonTest;
14  
15  @HelidonTest
16  @AddConfig(key = "server.port", value = "7001")
17  public class ProductResourceTest {
18  
19      private static ProcutEndPointSpec endPoint;
20  
21      @BeforeAll
22      static void init() throws Exception {
23          endPoint = RestClientBuilder.newBuilder()
24                  .baseUri(new URI("http://localhost:7001"))
25                  .build(ProcutEndPointSpec.class);
26      }
27  
28      @Test
29      void testNormalMember() {
30          List<Integer> expect = List.of(90, 1, 10);
31          List<Integer> actual = endPoint.calculatePrice("A0001", 100);
32          assertEquals(expect, actual);
33      }
34  
35      @Test
36      void testSilverMember() {
37          List<Integer> expect = List.of(80, 2, 20);
38          List<Integer> actual = endPoint.calculatePrice("A0002", 100);
39          assertEquals(expect, actual);
40      }
41  
42      @Test
43      void testGoldMember() {
44          List<Integer> expect = List.of(70, 3, 30);
45          List<Integer> actual = endPoint.calculatePrice("A0003", 100);
46          assertEquals(expect, actual);
47      }
48  
49      @Test
50      void testOtherMember() {
51          //List<Integer> expect = List.of(90, 1, 10);
52          List<Integer> expect = List.of(90, 1, 1); // テストレポートを出すため意図的に失敗させる
53          List<Integer> actual = endPoint.calculatePrice("99999", 100);
54          assertEquals(expect, actual);
55      }
56  }