From 37dbd6e6f998af37fe55c7c0c68c6b215178c54c Mon Sep 17 00:00:00 2001 From: Nisha Date: Wed, 8 Sep 2021 09:58:27 -0400 Subject: [PATCH 1/2] Finally done Mockito --- ...Maven__com_google_code_gson_gson_2_8_6.xml | 13 +++ .idea/libraries/Maven__junit_junit_4_13_2.xml | 13 +++ .../Maven__org_hamcrest_hamcrest_core_2_2.xml | 13 +++ ..._org_springframework_spring_web_5_3_9.xml} | 0 .idea/runConfigurations.xml | 10 +++ demo.iml | 3 +- pom.xml | 32 +++++++ .../demo/controller/BlogPostController.java | 1 + .../controller/BlogPostControllerTest.java | 81 +++++++++--------- .../demo/controller/TagControllerTest.java | 77 +++++++++-------- .../demo/controller/UserControllerTest.java | 77 +++++++++-------- .../demo/controller/BlogPostController.class | Bin 3228 -> 3228 bytes .../controller/BlogPostControllerTest.class | Bin 3908 -> 5096 bytes .../demo/controller/TagControllerTest.class | Bin 3785 -> 4973 bytes .../demo/controller/UserControllerTest.class | Bin 3807 -> 4995 bytes 15 files changed, 208 insertions(+), 112 deletions(-) create mode 100644 .idea/libraries/Maven__com_google_code_gson_gson_2_8_6.xml create mode 100644 .idea/libraries/Maven__junit_junit_4_13_2.xml create mode 100644 .idea/libraries/Maven__org_hamcrest_hamcrest_core_2_2.xml rename .idea/libraries/{Maven__org_springframework_spring_web_5_3_92.xml => Maven__org_springframework_spring_web_5_3_9.xml} (100%) create mode 100644 .idea/runConfigurations.xml diff --git a/.idea/libraries/Maven__com_google_code_gson_gson_2_8_6.xml b/.idea/libraries/Maven__com_google_code_gson_gson_2_8_6.xml new file mode 100644 index 000000000..82a9f20a6 --- /dev/null +++ b/.idea/libraries/Maven__com_google_code_gson_gson_2_8_6.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__junit_junit_4_13_2.xml b/.idea/libraries/Maven__junit_junit_4_13_2.xml new file mode 100644 index 000000000..606c352d5 --- /dev/null +++ b/.idea/libraries/Maven__junit_junit_4_13_2.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__org_hamcrest_hamcrest_core_2_2.xml b/.idea/libraries/Maven__org_hamcrest_hamcrest_core_2_2.xml new file mode 100644 index 000000000..15f1e4c17 --- /dev/null +++ b/.idea/libraries/Maven__org_hamcrest_hamcrest_core_2_2.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__org_springframework_spring_web_5_3_92.xml b/.idea/libraries/Maven__org_springframework_spring_web_5_3_9.xml similarity index 100% rename from .idea/libraries/Maven__org_springframework_spring_web_5_3_92.xml rename to .idea/libraries/Maven__org_springframework_spring_web_5_3_9.xml diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml new file mode 100644 index 000000000..797acea53 --- /dev/null +++ b/.idea/runConfigurations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/demo.iml b/demo.iml index 2f45d51da..f17d54dcb 100644 --- a/demo.iml +++ b/demo.iml @@ -61,7 +61,6 @@ - @@ -99,5 +98,7 @@ + + \ No newline at end of file diff --git a/pom.xml b/pom.xml index b4f4fc9d4..328ea740b 100644 --- a/pom.xml +++ b/pom.xml @@ -52,6 +52,38 @@ 4.13.2 test + + org.springframework + spring-web + 5.3.9 + test + + + org.springframework + spring-web + + + org.springframework + spring-web + 5.3.2 + test + + + org.springframework + spring-web + + + org.springframework + spring-web + + + + com.google.code.gson + gson + 2.8.6 + + + diff --git a/src/main/java/com/example/demo/controller/BlogPostController.java b/src/main/java/com/example/demo/controller/BlogPostController.java index 00c752bba..4c831b2f7 100644 --- a/src/main/java/com/example/demo/controller/BlogPostController.java +++ b/src/main/java/com/example/demo/controller/BlogPostController.java @@ -31,6 +31,7 @@ public ResponseEntity create(@RequestBody BlogPost blogPost){ return new ResponseEntity<>(service.create(blogPost), HttpStatus.CREATED); } + @PutMapping(value = "/update/{id}") public ResponseEntity update(@PathVariable Long id, @RequestBody BlogPost blogPost){ return new ResponseEntity<>(service.update(id, blogPost), HttpStatus.OK); diff --git a/src/test/java/com/example/demo/controller/BlogPostControllerTest.java b/src/test/java/com/example/demo/controller/BlogPostControllerTest.java index b8773a17c..5923725fd 100644 --- a/src/test/java/com/example/demo/controller/BlogPostControllerTest.java +++ b/src/test/java/com/example/demo/controller/BlogPostControllerTest.java @@ -2,21 +2,27 @@ import com.example.demo.models.BlogPost; import com.example.demo.service.BlogPostService; +import com.google.gson.Gson; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; - +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; import java.util.ArrayList; import java.util.List; - -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; class BlogPostControllerTest { + @Autowired + MockMvc mockMvc; @InjectMocks BlogPostController blogPostController; @@ -24,82 +30,77 @@ class BlogPostControllerTest { @Mock BlogPostService service; + private Gson gson; + + BlogPostControllerTest() { + } + @BeforeEach void setUp() { MockitoAnnotations.initMocks(this); + mockMvc = MockMvcBuilders.standaloneSetup(blogPostController).build(); + gson = new Gson(); + } @Test - void read() { - //given + void read() throws Exception { + BlogPost blogPost = new BlogPost(); - ResponseEntity expected = new ResponseEntity<>(blogPost,HttpStatus.OK); - //when Mockito.doReturn(blogPost).when(service).read(Mockito.anyLong()); - ResponseEntity actual = blogPostController.read(Mockito.anyLong()); - //Then - assertEquals(expected,actual); + mockMvc.perform(get("/blogPostController/read/{id}",5L)).andExpect(status().isOk()); } @Test - void readAll() { - //given + void readAll() throws Exception { + List blogPostList = new ArrayList<>(); - ResponseEntity> expected = new ResponseEntity<>(blogPostList,HttpStatus.OK); - //when Mockito.doReturn(blogPostList).when(service).readAll(); - ResponseEntity> actual = blogPostController.readAll(); - //Then - assertEquals(expected,actual); + mockMvc.perform(get("/blogPostController/read",5L)).andExpect(status().isOk()); } @Test - void create() { - //given + void create() throws Exception { + BlogPost blogPost = new BlogPost(); - ResponseEntity expected = new ResponseEntity<>(blogPost,HttpStatus.CREATED); - //when Mockito.doReturn(blogPost).when(service).create(blogPost); - ResponseEntity actual = blogPostController.create(blogPost); - - //Then - assertEquals(expected,actual); + mockMvc.perform(post("/blogPostController/create") + .contentType(MediaType.APPLICATION_JSON) + .content(gson.toJson(blogPost))) + .andExpect(status().isCreated()); } @Test - void updateTest() { - //given + void updateTest() throws Exception { + BlogPost blogPost = new BlogPost(); - ResponseEntity expected = new ResponseEntity<>(blogPost,HttpStatus.OK); - //when Mockito.when(service.update(5L, blogPost)).thenReturn(blogPost); - ResponseEntity actual = blogPostController.update(5L,blogPost); - //Then - assertEquals(expected,actual); + mockMvc.perform(put("/blogPostController/update/{id}",5L) + .contentType(MediaType.APPLICATION_JSON) + .content(gson.toJson(blogPost))) + .andExpect(status().isOk()); } @Test - void delete() { - //given - BlogPost blogPost = new BlogPost(); - ResponseEntity expected = new ResponseEntity<>(blogPost,HttpStatus.OK); + void deleteTest() throws Exception { - //when + BlogPost blogPost = new BlogPost(); +// Mockito.doReturn(blogPost).when(service).delete(Mockito.anyLong()); - ResponseEntity actual = blogPostController.delete(Mockito.anyLong()); - //Then - assertEquals(expected,actual); + mockMvc.perform(delete("/blogPostController/delete/{id}", 5L)) + .andExpect(status().isOk()); + } } \ No newline at end of file diff --git a/src/test/java/com/example/demo/controller/TagControllerTest.java b/src/test/java/com/example/demo/controller/TagControllerTest.java index 00210ec0c..4e4f46d0b 100644 --- a/src/test/java/com/example/demo/controller/TagControllerTest.java +++ b/src/test/java/com/example/demo/controller/TagControllerTest.java @@ -3,100 +3,107 @@ import com.example.demo.models.BlogPost; import com.example.demo.models.Tag; import com.example.demo.service.TagService; +import com.google.gson.Gson; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; import java.util.ArrayList; import java.util.List; import static org.junit.jupiter.api.Assertions.*; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; class TagControllerTest { + @Autowired + MockMvc mockMvc; @InjectMocks TagController tagController; @Mock TagService service; + + private Gson gson; + + TagControllerTest(){ + + } @BeforeEach void setUp() { MockitoAnnotations.initMocks(this); + mockMvc = MockMvcBuilders.standaloneSetup(tagController).build(); + gson = new Gson(); } @Test - void read() { - //given + void read() throws Exception { + Tag tag = new Tag(); - ResponseEntity expected = new ResponseEntity<>(tag, HttpStatus.OK); - //when Mockito.doReturn(tag).when(service).read(Mockito.anyLong()); - ResponseEntity actual = tagController.read(Mockito.anyLong()); - //Then - assertEquals(expected,actual); + mockMvc.perform(get("/tagController/read/{id}",5L)).andExpect(status().isOk()); } @Test - void readAll() { - //given + void readAll() throws Exception { + List tagList = new ArrayList<>(); - ResponseEntity> expected = new ResponseEntity<>(tagList,HttpStatus.OK); - //when Mockito.doReturn(tagList).when(service).readAll(); - ResponseEntity> actual = tagController.readAll(); - //Then - assertEquals(expected,actual); + mockMvc.perform(get("/tagController/read",5L)).andExpect(status().isOk()); } @Test - void create() { - //given + void create() throws Exception { + Tag tag = new Tag(); - ResponseEntity expected = new ResponseEntity<>(tag,HttpStatus.CREATED); - //when Mockito.doReturn(tag).when(service).create(tag); - ResponseEntity actual = tagController.create(tag); - //Then - assertEquals(expected,actual); + mockMvc.perform(post("/tagController/create") + .contentType(MediaType.APPLICATION_JSON) + .content(gson.toJson(tag))) + .andExpect(status().isCreated()); } @Test - void update() { - //given + void update() throws Exception { + Tag tag = new Tag(); - ResponseEntity expected = new ResponseEntity<>(tag,HttpStatus.OK); - //when Mockito.when(service.update(5L, tag)).thenReturn(tag); - ResponseEntity actual = tagController.update(5L,tag); + mockMvc.perform(put("/tagController/update/{id}",5L) + .contentType(MediaType.APPLICATION_JSON) + .content(gson.toJson(tag))) + .andExpect(status().isOk()); + - //Then - assertEquals(expected,actual); } @Test - void delete() { - //given + void deleteTest() throws Exception { + Tag tag = new Tag(); - ResponseEntity expected = new ResponseEntity<>(tag,HttpStatus.OK); - //when Mockito.doReturn(tag).when(service).delete(Mockito.anyLong()); - ResponseEntity actual = tagController.delete(Mockito.anyLong()); - //Then - assertEquals(expected,actual); + mockMvc.perform(delete("/tagController/delete/{id}", 5L)) + .andExpect(status().isOk()); } } \ No newline at end of file diff --git a/src/test/java/com/example/demo/controller/UserControllerTest.java b/src/test/java/com/example/demo/controller/UserControllerTest.java index 78f4acdaf..38900e330 100644 --- a/src/test/java/com/example/demo/controller/UserControllerTest.java +++ b/src/test/java/com/example/demo/controller/UserControllerTest.java @@ -3,101 +3,106 @@ import com.example.demo.models.BlogPost; import com.example.demo.models.User; import com.example.demo.service.UserService; +import com.google.gson.Gson; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; import java.util.ArrayList; import java.util.List; import static org.junit.jupiter.api.Assertions.*; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; class UserControllerTest { + @Autowired + MockMvc mockMvc; + @InjectMocks UserController userController; @Mock UserService service; + private Gson gson; + + UserControllerTest(){ + + } + @BeforeEach void setUp() { MockitoAnnotations.initMocks(this); + mockMvc = MockMvcBuilders.standaloneSetup(userController).build(); + gson = new Gson(); } @Test - void read() { - //given + void read() throws Exception { + User user = new User(); - ResponseEntity expected = new ResponseEntity<>(user, HttpStatus.OK); - //when Mockito.doReturn(user).when(service).read(Mockito.anyLong()); - ResponseEntity actual = userController.read(Mockito.anyLong()); - //Then - assertEquals(expected,actual); + mockMvc.perform(get("/userController/read/{id}",5L)).andExpect(status().isOk()); } @Test - void readAll() { - //given + void readAll() throws Exception { + List userList = new ArrayList<>(); - ResponseEntity> expected = new ResponseEntity<>(userList,HttpStatus.OK); - //when Mockito.doReturn(userList).when(service).readAll(); - ResponseEntity> actual = userController.readAll(); - //Then - assertEquals(expected,actual); + mockMvc.perform(get("/userController/read",5L)).andExpect(status().isOk()); } @Test - void create() { - //given + void create() throws Exception { + User user = new User(); - ResponseEntity expected = new ResponseEntity<>(user,HttpStatus.CREATED); - //when Mockito.doReturn(user).when(service).create(user); - ResponseEntity actual = userController.create(user); - //Then - assertEquals(expected,actual); + mockMvc.perform(post("/userController/create") + .contentType(MediaType.APPLICATION_JSON) + .content(gson.toJson(user))) + .andExpect(status().isCreated()); } @Test - void update() { - //given + void update() throws Exception { + User user = new User(); - ResponseEntity expected = new ResponseEntity<>(user,HttpStatus.OK); - //when Mockito.when(service.update(5L, user)).thenReturn(user); - ResponseEntity actual = userController.update(5L,user); - - //Then - assertEquals(expected,actual); + mockMvc.perform(put("/userController/update/{id}",5L) + .contentType(MediaType.APPLICATION_JSON) + .content(gson.toJson(user))) + .andExpect(status().isOk()); } @Test - void delete() { - //given + void deleteTest() throws Exception { + User user = new User(); - ResponseEntity expected = new ResponseEntity<>(user,HttpStatus.OK); - //when Mockito.doReturn(user).when(service).delete(Mockito.anyLong()); - ResponseEntity actual = userController.delete(Mockito.anyLong()); - //Then - assertEquals(expected,actual); + mockMvc.perform(delete("/userController/delete/{id}", 5L)) + .andExpect(status().isOk()); } } \ No newline at end of file diff --git a/target/classes/com/example/demo/controller/BlogPostController.class b/target/classes/com/example/demo/controller/BlogPostController.class index b5aded88e316d73100153da0e1b1e24f024bdbe2..aa27f89d7c047d86e1d2010bbe1c399d5c6e2381 100644 GIT binary patch delta 19 acmbOuIY)9s4>zOgzOAIMS< diff --git a/target/test-classes/com/example/demo/controller/BlogPostControllerTest.class b/target/test-classes/com/example/demo/controller/BlogPostControllerTest.class index 417a4927ed569ab3a4eba30601c8cf54d5927183..41839a1ba7e9e43c010cdf5bdfd73ccdac9d8663 100644 GIT binary patch literal 5096 zcmb_g340sW6+O?gJ@R-;QYQog38W#RULZq_3p7sC*e07T+rc(=oj_qEJ%XiImx(tS(!0ws<^3Z*SAv_Gm}&zq5CS&}2chrdsHGjF-~+;f+A<^TTgt#$o@7Ydf!LxF5)%BLmK>C5XDwC!!y_KvC%<*Xdpupa#f)m&|IcxiNGAoB1 z#|^B&b{${ffx5zy(sF!r!Ab?Lw`N-91Lja6a93?lrYW{7nRPSgTt66boxpRmS?LMf zlSsKaQ(m-k`K&b4GUuA9^0GNxb3(xjAt>|gz%|c0OEMKG@IKcxWsRMZ0=>0@i)&@6 z)6rf9ZHq`HjFYVy-*p7`gn}}zn;}3oWuE32*V~WTjvX8qh;{eOa{GvzrrsS1+mRE6 zTvB>77TF7hr>yL(<=N`JIN2I3+N5)!7Ugx#pP|>Ny3Lot!+C*&A?~FDahOYmyd6l- zwDPt&EEil)p0rYn$_`IjX@Pi&es!#d^c=xw{W3K?rk}i+lKIf>8onm5ZyQ}jNSe|z zl+6klB}EC_4+M55maG-aEChDeR5KL4C*f8yvX(EgGElYmSYx2aDX%?6xTwYT$!7uHowjzJYHNeF#2lIT>>@sUpq5`*EL! zZy9(N-`4OQ1K-8>47?Bh0=pHh)sbRg5XS@#G@@L?_YM32&lz|CAJFha13$u#1-fg_ zZ4<@@euAHB_?dy9;}-@_;gjJme6B&6vw9CL7xMbi>#X#M? zQD7AJzKKf${WUB%Ov4f@VQiFhMc_77ZA;Zjl@eB|EhV%=m5s1q3EbEnMSMko4XR>t zw5gKKDp1Im3ioiq&ZecuqO!veEGKPcT}Mu<9RlaOFVxW!CUnDlAyP737O9Z)UMZ?$ z_Kmy+tlNoUNlPmHyb!v3n!{DZK>)kzFwT0HcBg2)#}eLOkL6HHF7l7*2Zdyk_oF$j z9;8R9`zobYud}MIE=r2Nv##jsqCs(*<*X%KClg*5qXIWCo9mb;saq$-U~#^03m3)x^O72c49In)$PFFdu$vyw4x z1*yd_bK9A@L4hg!V6$0Jl*hc{xd>8895J1EE12rZV4U0jvqjfe`wef)Jf5 zk}1%^`gQVRp4Y9wQqx|n;BxS7I`*Coiw|s0$I8t<)P9 z>vt%Gj#dheI?`gS*IZ?jPR3=04sSG7sTn{jG8*k;;~em6E8U&3e1Rd`9<@w3z+b&F z{;X}~hb=Dz?&VWE#{rH|y>Z3d{ox$j*^0TNoNG}nF-MIbcH3P25TEYlC^)wDUV(Ul z4=p&sZ=EA>2UQ-z5TA@_6NWLuH{d}EXbA;eKwG$WxOW3By{)exHXrMK39Zu`Xj@17 zWoW(E5TCz-j?2(D6?BEx^zgeEd(lTVcULGnTvSxD^JJ*>6qUw8rBBle1@O!@bW*gD z=-a@%sP%@c*wKR5uyX_N-aywncFl2C>)IXR+Kn4IOJp~#xVHcR literal 3908 zcmb`K`%@EF6vw|C9t&Zs7SPsem7>)E!cw591g!x>eFRZJthQD+$t5f%*|^!D^l9G@ z`}kMdP6wmTboz7us7}9klPn7fk~%Vz?7ipSd(Qcsd(PSL&%aOp0x*JKgXqRo5bxrg zit|AR$N3Zh$c)2aS1c6cmtQ)a0Rm}=A>jkh^tr#q7B#N+IvA<$BiJ~#|J8I z2GK4xw&6o5z9n_tmQzDc<4rUx|C*#IA(bWDAh0MGQ&P4hN2ZEp6?YW0$J18ovXyrx zt*m2P>9nvF48{^xMi=*uOfD_-q{vu$!duoSs!oIz?42!S9Wx^q%)A*-i%2$WIfi3e z**w=`mYvcwR^pE7So-%&fRn$i#&`Z_qXOaKcD07`7?rWnrVUWYX7>YA>FNJ}>eP zO*iF*b2X=++x2U?KtJ^5Le6xAts6O0pAd_dEuuzZiJKd3VI&o_R6;M0RRugl=hJx) zoyS_l{Tw4Fc(lhglh4^^HnnIQ8FA0D@90a8lhbEKKF6qwD6hj=l~FMgPQgek*b}q- z*sHk;`gFb8#i1DA*NSHdYM1;FxJ$N~mgNlc-J) zZq-k;(PUlvC1Z1f6b_RqSjZ(gkZhFl&V(zSvkG=XOqnv@_ElGm+&&;pYv@IvinN9d zvI@Gk%L4^RWii!p^(rh4Ioy>NY!!J84hkBMBBWwP!#&(r5UMh_MagMc#YZYW*6;~F z)i8|DG#tWV6`#w=0~KFr_!3_!=va?u#I}u9d5;>#@wNQ=M#Hz#p$NW{U*Bu^0Y6Gt z9;*0B!_RmqCBJBxl=>&}K*3OzhufAT6UlWVZDdpWOk8#w1qb{sNcIc1q76-|RrU_I zD=F9=Dy5xILs)i{LtBRa97}JG4X?l!5}3KD;LWWwaD6ZHXsm{*x{gYJI%+_%Pb95b z;S_A9(@+iVrQVS#cjLTMh{xGQ^f@^Ywk%)2*3IkeUiX#+RUfITdUN2ZPBpTtF)N#L z+wuhkJJ$D<#OjKXE{K^$@`Nt*_#!WtsbIu!$(8kN--i?o{J+dm5Uyco%L}h+vt4p) zb>olZSyAQppk}y}=v}sB=E+gNy;7cree`9Cyyx~%IV}Fx*hgXg?x~Zr(a3!Ctb(b~ z_R*^=z|(aps^7)tQYTfg;17&@;V;PJTE(_SIm~2J7R$n|3O<>Jhb2i>*=*X!_kqLm zsMO!h=OU>$Wa#2=!*2f83-H5k47MGPn)y7!CuFbp$$BVJ`QZzP(qkOyd@6i4^*(~~ zI|l*u^IIwaIxxU*t+at#2RQ@Y;^BaMc-T8!L}2}J(Dmj38ga0Of{K4buCifI*%R(> zq-^3T8m>P=W9%uKuJ`?c=0{Mc`-*7k{S&Q^5e(pOv=yNh@zNT0T%&YnWwz_mvHl`n zmYy`Y7_Sioj7kfm(#c2+poj0EV|?-SyPoxyESAw)Fvg$jZxgDMtD`thj&W)@!BGQF zQqvwvN^4`@+8Ea=OkwT;&r||bEHjNhMLU@~p2@U^PM2m4yK8d{kz<(lM@e#=moY|P z$9){59>)Mq;k3)qUFI0vz|lpYTX^ym-tl&wAyH}9nJS`)NAz2n=)|U5+EeS6`quD@ zi^RdJwV5LHV}eXk-pmw+aGqoreM~1jra|v+4wspRHZYa$My|=bDXmrC&4fqtxJ(k+ zMB?U~%(YJJWscGHeMRi=dyLluaA7?8f!auyiFAcX^Gvh_g!!-58Qkz8MLeXF9#Vf9 zDO>|du1TcQS~b$7hxA+}bZ|onb=79NMW)+iN{}PTq)V}cmV8VT9@C2`Aq8hyMgc_s E16h3JmjD0& diff --git a/target/test-classes/com/example/demo/controller/TagControllerTest.class b/target/test-classes/com/example/demo/controller/TagControllerTest.class index 07bd4c9ee504ea73cc789cdd406390bbc4bfd74c..ce59272b2c85f6e50c0f67f68b61c5f8746df195 100644 GIT binary patch literal 4973 zcmb`LiFX@U6~@1@Y>zyiHo-|v(5HlS$X$4IrZ~$)EA_>FLvWgcshzN%kf{4&0me;8Ts(6isuxlIVZI= zxtvmPFz&b+!^^vtotbydoLF((CBqk)%<;R$y+D|}-z96zF9*L1=5t(=&(JS&+M zG23>0)3+SkQ*flIu%s|;&zLt;zT>VMW@UmAEBMZe<%%@L-r$>=F~{~@Cz}{9%9RQOmacV+tbu1G5}H=A@}|Timk6xk4@} z+!>SZ3WTT3?5ycp^10O5?k`yMpV0`okJl>C>Z~g?u`=(TFd6 zA&JPJa0+fpoV29VdudZOyX1g_5>3ZPaZJSvI=+UllQ+Q4ns&yRO3D<{aW4+5_=b)b z@l6%q((!G4N5_Y8NWo5-pY?g5V+2PP+}e=4RoANcu8!~FB^^g_pNjA6_yK;X;P!?o zjj5^QNBFUdpXm50ex~Cjey-qVgYK@HX2>uYPgva{?ZmR1FqoHF>s=TVBh-)fd z*Kr+x*6{}3)bSU*rQ@%7S;sW~Ce40Z#ou-O18*z1rA}HH(!dZM|HNe-??`LwhlK$z z4SNTd6&z^r<7O+UYynE-s4({X*7vg@t}Fv$||%3u0=X_ViB-)PzfR zQ-D#cDQFwmw9d5}7*{-AU{Ncl(RBD&&8A33uq1l5+7rIq@<-l#PSxr>?fZGTf3p0p z*G-%6Y$>%$nLr=sh08rFr(mhSwIr(3*kbBU3$Kv%W2s<=BWA26OgETS^|O>QY5J*! zV9|DR(fS3h-V?1ZfRa2eDb5R#%Hqg${M|4$lfe|Xys0Gxhg$_&$3TQbEg^)nO3qZ! z#nLr?DbF2L!D7o%tnuZ@dkkU^&8+Tbr8CFT{!Q1|Rx7YQ@5u8+Uo%H6Fz<~?k+#ek z9%Xofh@C$lKQk7aIWu+c(TT*=IR*QgCh_`-^z%eB@xENswa4(5)|`TFx#tPn524)V z5vW6G(c>)<(4J1;nFtQdTNT$*9pb_-K`VHyNuByX<8@iySa5vgZWXUp7Zm0HDPM+b z#f9g{QaU$mR8w}wVG$1YD_M-0Eiw(Z8pp$}&yB0RGe+_S=4WSk7Q$Y>dPewe+0HKy zs!(t@?>c$ChgZlGZB5%pf;OH+Yubj{)+P_KysG^2jLhDT@$PP36<#|AuR?i+H*Gl1 zUyWB_fGUR&Eqr*N8vpJ87+uM?G+oDEpx71kF^tfSYlo2+{pSl4h{Ncn*lC?i35 zLhl_X?k1zoU*I&fI&@~J)_CbOS)w%x84NYmtn9!6tnsNbq`ESyF zc!=l^6Z9g@cm%UBYfPD|m@>76DT#_H&$OED2SQ^G))`}z!_dIq%f$=+rxnElvwe~7 WUm{huhWB)Zck_%_Fhfagc;LUVL5A!A literal 3785 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 QsN&r`;uTC&QVY)f7rRiBSpWb4 literal 3807 zcmb`Jds7ov7{;FsmxZvc7Ex$wW2cyn(`gcE6r_b3e%Z3C@FU+ue&U?;z&-;6Cn?L`0{5ycx@KY3RxDdsgxTs<( ziW*!{aj6lPk%*!WSE884Oe0>#TTOTyvnuAKWIl?kScswt*W}vuC>HTf6gTj$ikne1 zON~vqCB^SaUGK}OA*abYUMv6Vq$nkoEj2-4SuUsEGM1hSmi4P8yGIlpnRT;{nGp+S-b|)NESt3)!!fOFo@)uq zUePmF>bB`v`c!sJq?{|9<#|q}qIEMR6r3!-&|mXzn=9_)k>(P0QW1sqqh{80#uU_a zbS@~UowSyyb6>*DifK2K6!yG9v%JG8BfVhQrkwl2T4&Xyo&Dt&?20@u@(!=9%M0gf zPC=Vz)0#^g^ffnUI>OeCoT*QUWy=!(xaIE~c42@3bJzQ>Y5chKQ zl;Dw0PklaTo7t6R+sKH!mVH}ab)1|&EAlydS;XmnXG40zNI9;NR&Xd`g;6(hTewrz zY8&0##4+A>bQf^nKdMBIrD;urq)wQ5N5THYnz3%^u4ATkDWRJF9il33zEM3z>2*)l zExGDbwA^9B)VsN*;()OcQWBlBTstK$m@=OZmsWzr?vvMP=t8%Ow1y0_bW>R|g<`GX zlq`@c!mGm4ki#9R-Byv;;K0>z3LPreHQdEL1?^>5RVX738~8xQhZ;V@#~KFliG~ws zSMjNw+*k3LhR^YZf&<&Wi`llZA>*ZC6kp26R~o*S#>DWAe0-~60^dn99;o%eUqN4)b$gZ=lf^S2ZDd#UnWXF-tekK=k@e5EQqpi5WiRkLjDmw5#ncLE z7?B;~#I7#C$g-Ma^K#h|A~Tm2ys~?yZSQ5y3|F|Ss-x1L0~MfHHA~j4a9o=yG*Cf% zu`gu&&YE}JWRe|1pOXV&%km6s-MP+Ibaz!y^~s8=cRHTxR3p2Qu(B&&o4v%Z#`d0~ zSY0>Lu9#USPsgRskmuzx74(O1@?@QR_ZS6T)n|-?kqY{E4Rl%SY?WKfn|LhG3i7{Y zn&D02ci3W?AE(0i74vf>MD0ste49IbcZAzsH-*)kr%uksWApLz3dTD2_S#dOI`vcq z)tfaP_JJ4E|7cvLI@%@EXR<36Gu}&hzL{a|((tm1*s+gI++pT#mDb`vCaBgsXywng zHvSBY@ShD9>?R!5^L>(U$krW_byA}8pWhBjdpOehR`{;#dI;qg4kGB~Qz`&j(8s4% z+`z5#TM(_uk3eXC8W)sg|qjcZaZ2xpmZvoFqOKLof7YG7+rGZ{) zp(py#$2AxesC!@=4x*S45O zxCcD5<)DJkH1q_`WIC`X(0g!5 m@sbj1t;}?jOt;8nkR! Date: Wed, 8 Sep 2021 11:02:13 -0400 Subject: [PATCH 2/2] Done with testing --- .../Maven__com_google_code_gson_gson_2_8_6.xml | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 .idea/libraries/Maven__com_google_code_gson_gson_2_8_6.xml diff --git a/.idea/libraries/Maven__com_google_code_gson_gson_2_8_6.xml b/.idea/libraries/Maven__com_google_code_gson_gson_2_8_6.xml deleted file mode 100644 index 82a9f20a6..000000000 --- a/.idea/libraries/Maven__com_google_code_gson_gson_2_8_6.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file