ronaldkwandy

NpwpControllerChangeOrderIntegrationTest

Aug 9th, 2018
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 19.01 KB | None | 0 0
  1. package id.co.sofcograha.gajiidapi.domain.hris.mst.npwp.controllers;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Comparator;
  5. import java.util.List;
  6.  
  7. import org.junit.Test;
  8. import org.springframework.http.MediaType;
  9. import org.springframework.test.web.servlet.ResultActions;
  10.  
  11. import static org.hamcrest.Matchers.hasSize;
  12. import static org.hamcrest.Matchers.is;
  13. import static org.hamcrest.Matchers.isIn;
  14. import static org.junit.Assert.assertEquals;
  15. import static org.junit.Assert.assertNotNull;
  16. import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
  17. import id.co.sofcograha.gajiidapi.base.constants.BaseUriConstants;
  18. import id.co.sofcograha.gajiidapi.domain.constants.DomainUriConstants;
  19. import id.co.sofcograha.gajiidapi.domain.hris.mst.npwp.entities.Npwp;
  20. import id.co.sofcograha.gajiidapi.domain.hris.mst.npwp.pojos.NpwpChangeOrderPojo;
  21. import id.co.sofcograha.gajiidapi.domain.hris.mst.npwp.pojos.NpwpPojo;
  22. import id.co.sofcograha.gajiidapi.domain.hris.mst.npwp.repositories.NpwpRepository;
  23. import id.co.sofcograha.gajiidapi.testutils.BaseControllerIntegrationTest;
  24.  
  25. public class NpwpControllerChangeOrderIntegrationTest extends BaseControllerIntegrationTest<Npwp, NpwpRepository> {
  26.    
  27.     List<Npwp> npwps;
  28.    
  29.     protected String getUri() {
  30.         return DomainUriConstants.NPWP + BaseUriConstants.ORDER;
  31.     }
  32.    
  33.     @Override
  34.     public void before() {
  35.         super.before();
  36.         npwps = new ArrayList<Npwp>();
  37.         npwps.add(addNpwp(1, "11.111.111.1-111.111", "PT Demonder", "Demonder", "4397 Morningview Lane", "Petunia Way", "Adam L Hall", "11.111.111.1-111.112", "Sharon T Thompson", "11.111.111.1-111.113", true));
  38.         npwps.add(addNpwp(2, "22.222.222.2-222.221", "White Corporation", "White", "3677 Roosevelt Street", "Irish Lane", "Arthur B Owens", "22.222.222.2-222.222", "Sharon T Thompson", "22.222.222.2-222.223", true));
  39.         npwps.add(addNpwp(3, "33.333.333.3-333.331", "PT Conity", "Conity", "3247  White River Way", "Bee Street", "Addie T Lyons", "33.333.333.3-333.332", "Jonna D White", "33.333.333.3-333.333", true));
  40.         npwps.add(addNpwp(4, "44.444.444.4-444.441", "Midist Corporation", "Midist", "3710 Meadow Drive", "Roosevelt Road", "Helene P Simmons", "44.444.444.4-444.442", "April J Forde", "44.444.444.4-444.443", true));
  41.         npwps.add(addNpwp(5, "55.555.555.5-555.551", "PT Intrata", "Intrata", "3960 Harley Vincent Drive", "Shinn Street", "Savannah J Salgado", "55.555.555.5-555.552", "Irwin J Pate", "55.555.555.5-555.553", true));
  42.         npwps.add(addNpwp(6, "66.666.666.6-666.661", "Divava Corps", "Divava", "4437 Elk Rd Little", "Green Street", "Aaron L Bluhm", "66.666.666.6-666.662", "Debra J Rodriguez", "66.666.666.6-666.663", true));
  43.     }
  44.    
  45.     @Override
  46.     public void after() {
  47.         super.after();
  48.         repo.deleteAll();
  49.     }
  50.  
  51.     @Test
  52.     @Override
  53.     public void test_Success() throws Exception {
  54.         test_Success_TopToBottom();
  55.     }
  56.  
  57.     @Test
  58.     public void test_Success_TopToBottom() throws Exception {
  59.         int idxToOrder = 0;
  60.         Npwp npwp = npwps.get(idxToOrder);
  61.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  62.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  63.         pojo.orderNumber = npwps.size();
  64.        
  65.         performTestOK(pojo);
  66.        
  67.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  68.         assertNotNull(fromDb);
  69.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  70.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  71.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  72.        
  73.         List<Npwp> orderedNpwps = repo.findAll();
  74.         orderedNpwps.sort(new Comparator<Npwp>() {
  75.             @Override
  76.             public int compare(Npwp o1, Npwp o2) {
  77.                 return o1.getOrderNumber() - o2.getOrderNumber();
  78.             }
  79.         });
  80.         int index = 0;
  81.         int lastIndex = (npwps.size() - 1);
  82.         assertEquals(orderedNpwps.get(index).getNpwpNumber(), "22.222.222.2-222.221");
  83.         assertEquals(orderedNpwps.get(index).getOrderNumber().longValue(), 1);
  84.         assertEquals(orderedNpwps.get(lastIndex).getNpwpNumber(), "11.111.111.1-111.111");
  85.         assertEquals(orderedNpwps.get(lastIndex).getOrderNumber().longValue(), lastIndex + 1);
  86.     }
  87.    
  88.     @Test
  89.     public void test_Success_BottomToTop() throws Exception {
  90.         int idxToOrder = npwps.size() - 1;
  91.         Npwp npwp = npwps.get(idxToOrder);
  92.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  93.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  94.         pojo.orderNumber = 1;
  95.        
  96.         performTestOK(pojo);
  97.        
  98.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  99.         assertNotNull(fromDb);
  100.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  101.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  102.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  103.        
  104.         List<Npwp> orderedNpwps = repo.findAll();
  105.         orderedNpwps.sort(new Comparator<Npwp>() {
  106.             @Override
  107.             public int compare(Npwp o1, Npwp o2) {
  108.                 return o1.getOrderNumber() - o2.getOrderNumber();
  109.             }
  110.         });
  111.         int index = 0;
  112.         int lastIndex = (npwps.size() - 1);
  113.         assertEquals(orderedNpwps.get(index).getNpwpNumber(), "66.666.666.6-666.661");
  114.         assertEquals(orderedNpwps.get(index).getOrderNumber().longValue(), 1);
  115.         assertEquals(orderedNpwps.get(lastIndex).getNpwpNumber(), "55.555.555.5-555.551");
  116.         assertEquals(orderedNpwps.get(lastIndex).getOrderNumber().longValue(), lastIndex + 1);
  117.     }
  118.    
  119.     @Test
  120.     public void test_Succcess_MiddleToTop() throws Exception {
  121.         int idxToOrder = 3;
  122.         Npwp npwp = npwps.get(idxToOrder);
  123.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  124.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  125.         pojo.orderNumber = 1;
  126.        
  127.         performTestOK(pojo);
  128.        
  129.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  130.         assertNotNull(fromDb);
  131.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  132.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  133.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  134.        
  135.         List<Npwp> orderedNpwps = repo.findAll();
  136.         orderedNpwps.sort(new Comparator<Npwp>() {
  137.             @Override
  138.             public int compare(Npwp o1, Npwp o2) {
  139.                 return o1.getOrderNumber() - o2.getOrderNumber();
  140.             }
  141.         });
  142.         int index = 0;
  143.         assertEquals(orderedNpwps.get(index).getNpwpNumber(), "44.444.444.4-444.441");
  144.         assertEquals(orderedNpwps.get(index).getOrderNumber().longValue(), index + 1);
  145.         assertEquals(orderedNpwps.get(idxToOrder).getNpwpNumber(), "33.333.333.3-333.331");
  146.         assertEquals(orderedNpwps.get(idxToOrder).getOrderNumber().longValue(), idxToOrder + 1);
  147.     }
  148.    
  149.     @Test
  150.     public void test_Succcess_TopToMiddle() throws Exception {
  151.         int idxToOrder = 0;
  152.         Npwp npwp = npwps.get(idxToOrder);
  153.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  154.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  155.         pojo.orderNumber = 3;
  156.        
  157.         performTestOK(pojo);
  158.        
  159.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  160.         assertNotNull(fromDb);
  161.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  162.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  163.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  164.        
  165.         List<Npwp> orderedNpwps = repo.findAll();
  166.         orderedNpwps.sort(new Comparator<Npwp>() {
  167.             @Override
  168.             public int compare(Npwp o1, Npwp o2) {
  169.                 return o1.getOrderNumber() - o2.getOrderNumber();
  170.             }
  171.         });
  172.         int index = pojo.orderNumber - 1;
  173.         assertEquals(orderedNpwps.get(index).getNpwpNumber(), "11.111.111.1-111.111");
  174.         assertEquals(orderedNpwps.get(index).getOrderNumber().longValue(), index + 1);
  175.         assertEquals(orderedNpwps.get(idxToOrder).getNpwpNumber(), "22.222.222.2-222.221");
  176.         assertEquals(orderedNpwps.get(idxToOrder).getOrderNumber().longValue(), idxToOrder + 1);
  177.     }
  178.    
  179.     @Test
  180.     public void test_Succcess_MiddleToBottom() throws Exception {
  181.         int idxToOrder = 3;
  182.         Npwp npwp = npwps.get(idxToOrder);
  183.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  184.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  185.         pojo.orderNumber = npwps.size();
  186.        
  187.         performTestOK(pojo);
  188.        
  189.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  190.         assertNotNull(fromDb);
  191.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  192.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  193.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  194.        
  195.         List<Npwp> orderedNpwps = repo.findAll();
  196.         orderedNpwps.sort(new Comparator<Npwp>() {
  197.             @Override
  198.             public int compare(Npwp o1, Npwp o2) {
  199.                 return o1.getOrderNumber() - o2.getOrderNumber();
  200.             }
  201.         });
  202.         int index = npwps.size() - 1;
  203.         assertEquals(orderedNpwps.get(index).getNpwpNumber(), "44.444.444.4-444.441");
  204.         assertEquals(orderedNpwps.get(index).getOrderNumber().longValue(), index + 1);
  205.         assertEquals(orderedNpwps.get(idxToOrder).getNpwpNumber(), "55.555.555.5-555.551");
  206.         assertEquals(orderedNpwps.get(idxToOrder).getOrderNumber().longValue(), idxToOrder + 1);
  207.     }
  208.    
  209.     @Test
  210.     public void test_Success_BottomToMiddle() throws Exception {
  211.         int idxToOrder = npwps.size() - 1;
  212.         Npwp npwp = npwps.get(idxToOrder);
  213.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  214.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  215.         pojo.orderNumber = 3;
  216.        
  217.         performTestOK(pojo);
  218.        
  219.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  220.         assertNotNull(fromDb);
  221.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  222.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  223.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  224.        
  225.         List<Npwp> orderedNpwps = repo.findAll();
  226.         orderedNpwps.sort(new Comparator<Npwp>() {
  227.             @Override
  228.             public int compare(Npwp o1, Npwp o2) {
  229.                 return o1.getOrderNumber() - o2.getOrderNumber();
  230.             }
  231.         });
  232.         int index = 2;
  233.         assertEquals(orderedNpwps.get(index).getNpwpNumber(), "66.666.666.6-666.661");
  234.         assertEquals(orderedNpwps.get(index).getOrderNumber().longValue(), index + 1);
  235.         assertEquals(orderedNpwps.get(idxToOrder).getNpwpNumber(), "55.555.555.5-555.551");
  236.         assertEquals(orderedNpwps.get(idxToOrder).getOrderNumber().longValue(), idxToOrder + 1);
  237.     }
  238.    
  239.     @Test
  240.     public void test_Success_MiddleToMiddleUp() throws Exception {
  241.         int idxToOrder = 3;
  242.         Npwp npwp = npwps.get(idxToOrder);
  243.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  244.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  245.         pojo.orderNumber = idxToOrder;
  246.        
  247.         performTestOK(pojo);
  248.        
  249.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  250.         assertNotNull(fromDb);
  251.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  252.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  253.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  254.        
  255.         List<Npwp> orderedNpwps = repo.findAll();
  256.         orderedNpwps.sort(new Comparator<Npwp>() {
  257.             @Override
  258.             public int compare(Npwp o1, Npwp o2) {
  259.                 return o1.getOrderNumber() - o2.getOrderNumber();
  260.             }
  261.         });
  262.         int middleUpIndex = 2;
  263.         assertEquals(orderedNpwps.get(middleUpIndex).getNpwpNumber(), "44.444.444.4-444.441");
  264.         assertEquals(orderedNpwps.get(middleUpIndex).getOrderNumber().longValue(), middleUpIndex + 1);
  265.         assertEquals(orderedNpwps.get(idxToOrder).getNpwpNumber(), "33.333.333.3-333.331");
  266.         assertEquals(orderedNpwps.get(idxToOrder).getOrderNumber().longValue(), idxToOrder + 1);
  267.     }
  268.    
  269.     @Test
  270.     public void test_Success_MiddleToMiddleDown() throws Exception {
  271.         int idxToOrder = 3;
  272.         Npwp npwp = npwps.get(idxToOrder);
  273.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  274.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  275.         pojo.orderNumber = 5;
  276.        
  277.         performTestOK(pojo);
  278.        
  279.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  280.         assertNotNull(fromDb);
  281.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  282.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  283.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  284.        
  285.         List<Npwp> orderedNpwps = repo.findAll();
  286.         orderedNpwps.sort(new Comparator<Npwp>() {
  287.             @Override
  288.             public int compare(Npwp o1, Npwp o2) {
  289.                 return o1.getOrderNumber() - o2.getOrderNumber();
  290.             }
  291.         });
  292.         int middleUpIndex = 4;
  293.         assertEquals(orderedNpwps.get(middleUpIndex).getNpwpNumber(), "44.444.444.4-444.441");
  294.         assertEquals(orderedNpwps.get(middleUpIndex).getOrderNumber().longValue(), middleUpIndex + 1);
  295.         assertEquals(orderedNpwps.get(idxToOrder).getNpwpNumber(), "55.555.555.5-555.551");
  296.         assertEquals(orderedNpwps.get(idxToOrder).getOrderNumber().longValue(), idxToOrder + 1);
  297.     }
  298.    
  299.     @Test
  300.     public void test_Success_NoChangeOrder() throws Exception {
  301.         int idxToOrder = 0;
  302.         Npwp npwp = npwps.get(idxToOrder);
  303.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  304.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  305.         pojo.orderNumber = 1;
  306.        
  307.         performTestOK(pojo)
  308.             .andExpect(jsonPath("$.notices", hasSize(1)))
  309.             .andExpect(jsonPath("$.notices[0]").exists())
  310.             .andExpect(jsonPath("$.notices[0].code", is("npwpChangeOrder.npwp.orderNumber.no.change")))
  311.             .andExpect(jsonPath("$.notices[0].desc").isNotEmpty());
  312.        
  313.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  314.         assertNotNull(fromDb);
  315.         assertEquals(npwps.get(idxToOrder).getVersion().intValue(), fromDb.getVersion().intValue());
  316.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  317.         assertEquals(pojo.orderNumber, fromDb.getOrderNumber());
  318.        
  319.         List<Npwp> orderedNpwps = repo.findAll();
  320.         orderedNpwps.sort(new Comparator<Npwp>() {
  321.             @Override
  322.             public int compare(Npwp o1, Npwp o2) {
  323.                 return o1.getOrderNumber() - o2.getOrderNumber();
  324.             }
  325.         });
  326.         assertEquals(orderedNpwps.get(0).getNpwpNumber(), "11.111.111.1-111.111");
  327.     }
  328.    
  329.     @Test
  330.     public void test_ErrorParameterRequired_NpwpNotSent() throws Exception {
  331.        
  332.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  333.        
  334.         performTestError(pojo)
  335.             .andExpect(jsonPath("$.errors", hasSize(2)))
  336.             .andExpect(jsonPath("$.errors[0]").exists())
  337.             .andExpect(jsonPath("$.errors[0].code", isIn(getRequiredValuesErrorCodes())))
  338.             .andExpect(jsonPath("$.errors[0].desc").isNotEmpty())
  339.             .andExpect(jsonPath("$.errors[1]").exists())
  340.             .andExpect(jsonPath("$.errors[1].code", isIn(getRequiredValuesErrorCodes())))
  341.             .andExpect(jsonPath("$.errors[1].desc").isNotEmpty());
  342.        
  343.         List<Npwp> orderedNpwps = repo.findAll();
  344.         orderedNpwps.sort(new Comparator<Npwp>() {
  345.             @Override
  346.             public int compare(Npwp o1, Npwp o2) {
  347.                 return o1.getOrderNumber() - o2.getOrderNumber();
  348.             }
  349.         });
  350.         assertEquals(orderedNpwps.get(0).getNpwpNumber(), "11.111.111.1-111.111");
  351.     }
  352.    
  353.     @Test
  354.     public void test_ErrorParameterRequired_VersionNotSent() throws Exception {
  355.         int idxToOrder = 0;
  356.         Npwp npwp = npwps.get(idxToOrder);
  357.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  358.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  359.         pojo.npwp.version = null;
  360.         pojo.orderNumber = 3;
  361.        
  362.         performTestError(pojo)
  363.             .andExpect(jsonPath("$.errors", hasSize(1)))
  364.             .andExpect(jsonPath("$.errors[0]").exists())
  365.             .andExpect(jsonPath("$.errors[0].code", isIn(getRequiredValuesErrorCodes())))
  366.             .andExpect(jsonPath("$.errors[0].desc").isNotEmpty());
  367.        
  368.         List<Npwp> orderedNpwps = repo.findAll();
  369.         orderedNpwps.sort(new Comparator<Npwp>() {
  370.             @Override
  371.             public int compare(Npwp o1, Npwp o2) {
  372.                 return o1.getOrderNumber() - o2.getOrderNumber();
  373.             }
  374.         });
  375.         assertEquals(orderedNpwps.get(0).getNpwpNumber(), "11.111.111.1-111.111");
  376.     }
  377.    
  378.     @Test
  379.     public void test_Error_NpwpObsoleteVersion() throws Exception {
  380.         int idxToOrder = 0;
  381.        
  382.         updateNpwp(npwps.get(0));
  383.        
  384.         Npwp npwp = npwps.get(idxToOrder);
  385.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  386.         pojo.npwp = NpwpPojo.fromEntity(npwp);
  387.         pojo.orderNumber = 3;
  388.        
  389.         performTestError(pojo)
  390.             .andExpect(jsonPath("$.errors", hasSize(1)))
  391.             .andExpect(jsonPath("$.errors[0]").exists())
  392.             .andExpect(jsonPath("$.errors[0].code", is("npwpChangeOrder.npwp.obsolete.version")))
  393.             .andExpect(jsonPath("$.errors[0].desc").isNotEmpty());
  394.        
  395.         Npwp fromDb = repo.findById(npwps.get(idxToOrder).getId());
  396.         assertNotNull(fromDb);
  397.         assertEquals(npwps.get(idxToOrder).getVersion() + 1, fromDb.getVersion().intValue());
  398.         assertEquals(npwps.get(idxToOrder).getNpwpNumber(), fromDb.getNpwpNumber());
  399.         assertEquals(npwps.get(idxToOrder).getOrderNumber().intValue(), fromDb.getOrderNumber().intValue());
  400.        
  401.         List<Npwp> orderedNpwps = repo.findAll();
  402.         orderedNpwps.sort(new Comparator<Npwp>() {
  403.             @Override
  404.             public int compare(Npwp o1, Npwp o2) {
  405.                 return o1.getOrderNumber() - o2.getOrderNumber();
  406.             }
  407.         });
  408.         assertEquals(orderedNpwps.get(0).getNpwpNumber(), "11.111.111.1-111.111");
  409.     }
  410.    
  411.     @Test
  412.     public void test_Error_EducationLeveNotFound() throws Exception {
  413.         Npwp notFound = new Npwp();
  414.         notFound.setId("notFoundID");
  415.         notFound.setVersion(0L);
  416.        
  417.         NpwpChangeOrderPojo pojo = new NpwpChangeOrderPojo();
  418.         pojo.npwp = NpwpPojo.fromEntity(notFound);
  419.         pojo.orderNumber = 3;
  420.        
  421.         performTestError(pojo)
  422.             .andExpect(jsonPath("$.errors", hasSize(1)))
  423.             .andExpect(jsonPath("$.errors[0]").exists())
  424.             .andExpect(jsonPath("$.errors[0].code", is("npwpChangeOrder.npwp.not.found")))
  425.             .andExpect(jsonPath("$.errors[0].desc").isNotEmpty());
  426.        
  427.         List<Npwp> orderedNpwps = repo.findAll();
  428.         orderedNpwps.sort(new Comparator<Npwp>() {
  429.             @Override
  430.             public int compare(Npwp o1, Npwp o2) {
  431.                 return o1.getOrderNumber() - o2.getOrderNumber();
  432.             }
  433.         });
  434.         assertEquals(orderedNpwps.get(0).getNpwpNumber(), "11.111.111.1-111.111");
  435.     }
  436.    
  437.     private ResultActions performTestOK(NpwpChangeOrderPojo pojo) throws Exception {
  438.         return performRequestOK(
  439.                 createPutRequestBuilder(getUri())
  440.                 .contentType(MediaType.APPLICATION_JSON_UTF8)
  441.                 .content(objectMapper.writeValueAsString(pojo)));
  442.     }
  443.    
  444.     private ResultActions performTestError(NpwpChangeOrderPojo pojo) throws Exception {
  445.         return performRequestError(
  446.                 createPutRequestBuilder(getUri())
  447.                 .contentType(MediaType.APPLICATION_JSON_UTF8)
  448.                 .content(objectMapper.writeValueAsString(pojo)));
  449.     }
  450.    
  451.     private Npwp updateNpwp(Npwp entity) {
  452.         entity.setNpwpName(entity.getNpwpName() + "-edited");
  453.         return repo.saveAndFlush(entity);
  454.     }
  455.    
  456.     private Npwp addNpwp(Integer orderNumber, String npwpNumber, String npwpName, String companyName, String address, String taxOffice, String npwpOwnerName, String npwpOwnerNumber, String npwpAgentName, String npwpAgentNumber, Boolean isActive) {
  457.         Npwp entity = new Npwp();
  458.         entity.setOrderNumber(orderNumber);
  459.         entity.setNpwpNumber(npwpNumber);
  460.         entity.setNpwpName(npwpName);
  461.         entity.setCompanyName(companyName);
  462.         entity.setAddress(address);
  463.         entity.setTaxOffice(taxOffice);
  464.         entity.setNpwpOwnerName(npwpOwnerName);
  465.         entity.setNpwpOwnerNumber(npwpOwnerNumber);
  466.         entity.setNpwpAgentName(npwpAgentName);
  467.         entity.setNpwpAgentNumber(npwpAgentNumber);
  468.         entity.setActive(isActive);
  469.         return repo.saveAndFlush(entity);
  470.     }
  471.    
  472.     private List<String> getRequiredValuesErrorCodes() {
  473.         List<String> errorCodes = new ArrayList<>();
  474.         errorCodes.add("npwpChangeOrder.npwp.required");
  475.         errorCodes.add("npwpChangeOrder.npwp.version.required");
  476.         errorCodes.add("npwpChangeOrder.orderNumber.required");
  477.         return errorCodes;
  478.     }
  479.    
  480. }
Advertisement
Add Comment
Please, Sign In to add comment