This is an automated email from the ASF dual-hosted git repository.

jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau-petstore.git

commit d2a8860369896002c6f8cf3881931950e42a158c
Author: rasa <[email protected]>
AuthorDate: Fri Dec 20 07:31:31 2019 +0200

    mock rest test improved
---
 .../org/apache/juneau/petstore/test/MockTest.java  | 325 +++++++++++++--------
 1 file changed, 205 insertions(+), 120 deletions(-)

diff --git 
a/juneau-petstore-server/src/test/java/org/apache/juneau/petstore/test/MockTest.java
 
b/juneau-petstore-server/src/test/java/org/apache/juneau/petstore/test/MockTest.java
index 51df5ad..121b874 100644
--- 
a/juneau-petstore-server/src/test/java/org/apache/juneau/petstore/test/MockTest.java
+++ 
b/juneau-petstore-server/src/test/java/org/apache/juneau/petstore/test/MockTest.java
@@ -1,7 +1,10 @@
 package org.apache.juneau.petstore.test;
 
-
+import java.io.IOException;
+import javax.servlet.ServletException;
 import org.apache.juneau.petstore.App;
+import org.apache.juneau.petstore.dto.PetStatus;
+import org.apache.juneau.petstore.dto.Species;
 import org.apache.juneau.petstore.rest.PetStoreResource;
 import org.apache.juneau.rest.mock2.MockRest;
 import org.junit.Before;
@@ -25,115 +28,185 @@ public class MockTest {
        public void setup() {
 
                petStoreRest = 
MockRest.create(petStoreResource).simpleJson().build();
+
        }
 
        // 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
        // Pets
        // 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
-       // Posting pet
-
-       @Test
-       public void testPostPet() throws Exception {
-
-               petStoreRest
-               .post("/pet", "{name:'Sunshine',tags:['nice'], 
price:100.0,species:'BIRD'}")
-               .execute()
-               .assertStatus(200)
-               .assertBody("1");
+       private String createTestPet() throws AssertionError, ServletException, 
IOException {
+               String petId = petStoreRest
+                               .post("/pet", "{name:'Sunshine',tags:['nice'], 
price:100.0,species:'BIRD'}")
+                               .execute()
+                               .assertStatus(200)
+                               .getBodyAsString();
+
+               return petId;
        }
-
-       // Getting all pets
-
-       @Test
-       public void testGettingPets() throws Exception {
-
+       
+       private void deleteTestPet(String petId) throws AssertionError, 
ServletException, IOException {
                petStoreRest
-               .get("/pet")
+               .delete("/pet/" + petId)
                .execute()
-               .assertStatus(200)
-               
.assertBody("[{id:1,species:'BIRD',name:'Sunshine',tags:['nice'],price:100.0,status:'AVAILABLE'}]");
+               .assertStatus(200);
 
        }
 
-       // Find pet by Id
+       // Delete pet by Id
 
        @Test
-       public void testfindPet() throws Exception {
-
+       public void testDeletePet() throws Exception {
+               String petId = createTestPet();
                petStoreRest
-               .get("/pet/1")
+               .delete("/pet/" + petId)
                .execute()
-               .assertStatus(200)
-               
.assertBody("{id:1,species:'BIRD',name:'Sunshine',tags:['nice'],price:100.0,status:'AVAILABLE'}");
-
+               .assertStatus(200);
+               
        }
 
-       // Find pet by status
+       // Getting all pets
 
        @Test
-       public void testfindPetByStatus() throws Exception {
-
+       public void testGettingPets() throws Exception {
+               String petId = createTestPet();
                petStoreRest
-               .request("GET", "/pet/findByStatus", "{'AVAILABLE'}")
+               .get("/pet")
                .execute()
                .assertStatus(200)
-               
.assertBody("[{id:1,species:'BIRD',name:'Sunshine',tags:[],price:100.0,status:'AVAILABLE'}]");
-
+               .assertBody(
+                               "[{id:" + petId + 
",species:'BIRD',name:'Sunshine',tags:['nice'],price:100.0,status:'AVAILABLE'}]");
+               deleteTestPet(petId);
        }
 
-       // Find pet by tags
+       // Posting pet     
 
        @Test
-       public void testFindPetByTags() throws Exception {
+       public void testPostPet() throws Exception {
 
-               petStoreRest
-               .request("GET", "/pet/findByTags", "{'nice'}")
+               petStoreRest    
+               .post("/pet", "{name:'Sunshine',tags:['nice'], 
price:100.0,species:'BIRD'}")
                .execute()
                .assertStatus(200)
-               
.assertBody("[{id:1,species:'BIRD',name:'Sunshine',tags:['nice'],price:100.0,status:'AVAILABLE'}]");
-
-       }
-       // Updating pet
-
-       @Test
-       public void testUpdatePet() throws Exception {
-
-               petStoreRest
-               .put("/pet/1", 
"{species:'BIRD',name:'Daisy',tags:[],price:120.0,status:'AVAILABLE'}")
-               .execute()
-               .assertStatus(200).assertBody("OK");
+               .assertBody("2");
 
+               deleteTestPet("2");
        }
 
-       // Delete pet by Id
-
-       @Test
-       public void testDeletePet() throws Exception {
-
-               petStoreRest
-               .delete("/pet/1")
-               .execute()
-               .assertStatus(200)
-               .assertBody("OK");
-       }
+       
+       // Find pet by Id
 
        
+         @Test public void testfindPet() throws Exception { 
+                 String petId = createTestPet(); 
+                 petStoreRest 
+                 .get("/pet/" + petId) 
+                 .execute()
+             .assertStatus(200) 
+             
.assertBody("{id:"+petId+",species:'BIRD',name:'Sunshine',tags:['nice'],price:100.0,status:'AVAILABLE'}"
+         );
+                 deleteTestPet(petId);
+         
+         }
+         
+         // Find pet by status
+        
+        @Test public void testfindPetByStatus() throws Exception {
+                String petId = createTestPet();
+                PetStatus [] status= {PetStatus.AVAILABLE};
+                
+         petStoreRest 
+         .request("GET", "/pet/findByStatus", status) 
+         .execute()
+         .assertStatus(200) 
+         .assertBody(
+         
"[{id:"+petId+",species:'BIRD',name:'Sunshine',tags:[],price:100.0,status:'AVAILABLE'}]"
+         );
+         deleteTestPet(petId);
+         }
+         
+         // Find pet by tags
+       
+         @Test public void testFindPetByTags() throws Exception {
+                 String petId = createTestPet(); 
+                 String[] tags= {"nice"};
+                 
+         petStoreRest 
+         .request("GET", "/pet/findByTags", tags) 
+         .execute()
+         .assertStatus(200) 
+         .assertBody(
+        
"[{id:"+petId+",species:'BIRD',name:'Sunshine',tags:['nice'],price:100.0,status:'AVAILABLE'}]"
+        );
+        
+         } 
+       
+         
+        // Updating pet
+       
+          @Test public void testUpdatePet() throws Exception { 
+                  
+       String petId = createTestPet(); 
+          petStoreRest 
+
+         .put("/pet/" + petId , "{id: 
"+petId+",name:'Daisy1',price:1000.0,species:'BIRD'tags:['nice'], 
status:'AVAILABLE' }")
+         .execute() 
+         .assertStatus(200); 
+         
+          deleteTestPet(petId);
+
+         }
+         
        // 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
        // Users
        // 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
+       
+         private void deleteTestUser(String username) throws AssertionError, 
ServletException, IOException {
+                       
+                       petStoreRest
+                       .delete("/user/"+ username)
+                       .execute()
+                       .assertStatus(200);
+
+               }
+         
+          private String createTestUser(String username) throws 
AssertionError, ServletException, IOException {
+
+                
+                  petStoreRest
+                       .post("/user", "{username:"+username+",firstName: 
'Tom',lastName: 'Simon', userStatus: 'ACTIVE'}")
+                   .execute()
+                       .assertStatus(200);
+                  
+                       return username;                
+               } 
+          
        // Create user
 
-       @Test
-       public void testCreateUser() throws Exception {
+               @Test
+               public void testCreateUser() throws Exception {
+                       
+                       petStoreRest
+                       .post("/user", "{username:'catlover',firstName: 
'Tom',lastName: 'Simon', userStatus: 'ACTIVE'}")
+                       .execute()
+                       .assertStatus(200);
+                               
+                       deleteTestUser("catlover");
+               }
+               
+       // Delete user
 
-               petStoreRest
-               .post("/user", "{username:'catlover',firstName: 'Tom',lastName: 
'Simon', userStatus: 'ACTIVE'}")
-               .execute()
-               .assertStatus(200)
-               .assertBody("OK");
-       }
+               @Test
+               public void testDeleteUser() throws Exception {
+                       String name="catlover1";
+                       createTestUser(name);
+                       
+                       petStoreRest
+                       .delete("/user/" + name)
+                       .execute()
+                       .assertStatus(200);
+                       
+               }
+                               
 
        // Create list of users
 
@@ -141,119 +214,131 @@ public class MockTest {
        public void testCreateUsers() throws Exception {
 
                petStoreRest
-               .post("/user/createWithArray",
-                               "[{username:'billy',firstName: 
'Billy',lastName: 'Bob', userStatus: 'ACTIVE'},"
-                               + "{username:'peter',firstName: 
'Peter',lastName: 'Adams', userStatus: 'ACTIVE'}]")
-               .execute()
-               .assertStatus(200)
-               .assertBody("OK");
+                               .post("/user/createWithArray",
+                                               "[{username:'billy',firstName: 
'Billy',lastName: 'Bob', userStatus: 'ACTIVE'},"
+                                                               + 
"{username:'peter',firstName: 'Peter',lastName: 'Adams', userStatus: 
'ACTIVE'}]")
+                               .execute()
+                               .assertStatus(200);
+               deleteTestUser("billy");
+               deleteTestUser("peter");
        }
 
        // Getting all users
 
        @Test
        public void testGettingUsers() throws Exception {
-
+               createTestUser("doglover");
                petStoreRest
                .get("/user")
                .execute()
                .assertStatus(200)
-               .assertBody(
-                               "[{username:'catlover',firstName: 
'Tom',lastName: 'Simon', userStatus: 'ACTIVE'},"
-                               + "{username:'billy',firstName: 
'Billy',lastName: 'Bob', userStatus: 'ACTIVE'},"
-                               + "{username:'peter',firstName: 
'Peter',lastName: 'Adams', userStatus: 'ACTIVE'}]");
-
+               .assertBody("[{username:'doglover',firstName: 'Tom',lastName: 
'Simon', userStatus: 'ACTIVE'}]");
+               deleteTestUser("doglover");
        }
 
        // Get user by user name
 
        @Test
        public void testFindUserByName() throws Exception {
-
+               createTestUser("garfield");
                petStoreRest
-               .get("/user/catlover")
+               .get("/user/garfield")
                .execute()
                .assertStatus(200)
-               .assertBody("{id:1, username:'catlover',firstName: 
'Tom',lastName: 'Simon', userStatus: 'ACTIVE'}");
-
+               .assertBody("{username:'garfield',firstName:  'Tom',lastName: 
'Simon', userStatus: 'ACTIVE'}");
+               deleteTestUser("garfield");
        }
 
        // Updating user
 
        @Test
        public void testUpdateUser() throws Exception {
-
-               petStoreRest
-               .put("/user/catlover", "{id:1, username:'catlover',phone: 
'34562345'}")
-               .execute()
-               .assertStatus(200)
-               .assertBody("OK");
-       }
-
-       // Delete user
-
-       @Test
-       public void testDeleteUser() throws Exception {
-
+               createTestUser("snoopy");
                petStoreRest
-               .delete("/user/billy")
+               .put("/user/snoopy", "{username:'snoopy',phone: '34562345'}")
                .execute()
-               .assertStatus(200)
-               .assertBody("OK");
+               .assertStatus(200);
+               deleteTestUser("snoopy");
        }
 
-
+       
 
 
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
        // Orders
        // 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
+       private void deleteTestOrder(String orderId) throws AssertionError, 
ServletException, IOException {
+               petStoreRest
+               .delete("/store/order/" + orderId)
+               .execute()
+               .assertStatus(200);
+               
+       }
+       
+       private String createTestOrder() throws AssertionError, 
ServletException, IOException {
+               String petId = createTestPet();
+               String orderId = petStoreRest
+                               .post("/store/order", "{petId:"+petId+" + 
,username: 'catlover'}")                              
+                               .execute()
+                               .assertStatus(200)
+                               .getBodyAsString();
+
+               return orderId;
+       }
+       
        // Posting order
 
        @Test
        public void testPostOrder() throws Exception {
-
-               petStoreRest
-               .post("/store/order", "{petId:'1',username: 'catlover'}")
+       
+                               petStoreRest
+               .post("/store/order", "{petId:'1',username: 'snoopy'}")
                .execute()
                .assertStatus(200)
-               .assertBody("1");
+               .assertBody("4");
+               deleteTestOrder("4");
+       
+               
        }
+       
        // Getting all orders
 
        @Test
        public void testGettingOrders() throws Exception {
-
+               
+               String orderId = createTestOrder();
                petStoreRest
                .get("/store/order")
                .execute()
                .assertStatus(200)
-               .assertBody("[{id:1,petId:1,status:'PLACED'}]");
-
+               .assertBody("[{id:"+orderId+",petId:0,status:'PLACED'}]");
+               
+               deleteTestOrder(orderId);
+       
        }
 
        // Find order by Id
 
        @Test
        public void testfindOrder() throws Exception {
-
+               String orderId = createTestOrder();
                petStoreRest
-               .get("/store/order/1")
+               .get("/store/order/"+orderId)
                .execute()
                .assertStatus(200)
-               .assertBody("{id:1,petId:1,status:'PLACED'}");
-
+               .assertBody("{id:"+orderId+",petId:0,status:'PLACED'}");
+               
+               deleteTestOrder(orderId);
        }
 
        // Delete order by Id
 
        @Test
        public void testDeleteOrder() throws Exception {
-
+               String orderId = createTestOrder();
                petStoreRest
-               .delete("/store/order/1")
+               .delete("/store/order/"+orderId)
                .execute()
-               .assertStatus(200)
-               .assertBody("OK");
-       }
+               .assertStatus(200);
+               
+       } 
 }
\ No newline at end of file

Reply via email to