Skip to content
Snippets Groups Projects
Commit c67d451a authored by Ahmad Arslan's avatar Ahmad Arslan
Browse files

Merge branch 'deon' into 'master'

Deon

See merge request !2
parents b6850e05 641cbe57
Branches Ying
No related tags found
1 merge request!2Deon
package de.rwth.swc.sqa;
import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT;
import java.util.HashMap;
import java.util.Map;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.web.server.LocalServerPort;
import de.rwth.swc.sqa.model.DiscountCard;
import io.restassured.RestAssured;
@SpringBootTest(webEnvironment = RANDOM_PORT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class CustomerTest {
@LocalServerPort
int serverPort;
@BeforeEach
public void setup() {
RestAssured.port = serverPort;
}
@Test
@Order(1)
public void addCustomerTest() {
//400
Map<String, Object> parms1 = new HashMap<String, Object>();
parms1.put("birthdate", "");
parms1.put("disabled", true);
RestAssured.given().header("content-Type", "application/json").and()
.body(parms1).when().post("/customers").then().statusCode(400);
//200
Map<String, Object> parms = new HashMap<String, Object>();
parms.put("birthdate", "2000-01-01");
parms.put("disabled", false);
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post("/customers").then().statusCode(201);
Map<String, Object> parms3 = new HashMap<String, Object>();
parms3.put("birthdate", "2001-01-01");
parms3.put("disabled", false);
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post("/customers").then().statusCode(201);
}
@Test
@Order(2)
public void addDiscountCardToCustomerTest() {
Long customerId =0L;
String path = "/customers/"+customerId+"/discountcards";
Map<String, Object> parms = new HashMap<String, Object>();
//404
customerId = 1L;
path = "/customers/"+customerId+"/discountcards";
parms.clear();
parms.put("customerId", customerId);
parms.put("id", 1L);
parms.put("type", 1);
parms.put("validFrom", "2022-01-01");
parms.put("validFor", DiscountCard.ValidForEnum._30D);
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post(path).then().statusCode(404);
//400
customerId = DataService.customerList.get(0).getId();
path = "/customers/"+customerId+"/discountcards";
parms.clear();
parms.put("customerId", customerId);
parms.put("type", 1);
parms.put("validFrom", "2022-01-01");
parms.put("validFor", DiscountCard.ValidForEnum._30D);
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post(path).then().statusCode(400);
//201
customerId = DataService.customerList.get(0).getId();
path = "/customers/"+customerId+"/discountcards";
parms.clear();
parms.put("customerId", customerId);
parms.put("id", 1L);
parms.put("type", 1);
parms.put("validFrom", "2022-01-01");
parms.put("validFor", DiscountCard.ValidForEnum._30D);
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post(path).then().statusCode(201);
//409 repeat conflict
customerId = DataService.customerList.get(0).getId();
path = "/customers/"+customerId+"/discountcards";
parms.clear();
parms.put("customerId", customerId);
parms.put("id", 1L);
parms.put("type", 1);
parms.put("validFrom", "2022-01-01");
parms.put("validFor", DiscountCard.ValidForEnum._30D);
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post(path).then().statusCode(409);
}
@Test
@Order(3)
public void getCustomerDiscountCardTest() {
Long customerId =0L;
String path = "/customers/"+customerId+"/discountcards";
//400
path = "/customers/"+customerId+"/discountcards";
RestAssured.given().when().get(path).then().statusCode(400);
//404
customerId = 11111L;
path = "/customers/"+customerId+"/discountcards";
RestAssured.given().when().get(path).then().statusCode(404);
//201
customerId = DataService.customerList.get(0).getId();
path = "/customers/"+customerId+"/discountcards";
RestAssured.given().when().get(path).then().statusCode(200);
}
}
package de.rwth.swc.sqa;
import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT;
import java.util.HashMap;
import java.util.Map;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.web.server.LocalServerPort;
import io.restassured.RestAssured;
@SpringBootTest(webEnvironment = RANDOM_PORT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class TicketTest {
@LocalServerPort
int serverPort;
@BeforeEach
public void setup() {
RestAssured.port = serverPort;
}
@Test
@Order(1)
public void buyTicketTest() {
//400//no birthdate
Map<String, Object> parms1 = new HashMap<String, Object>();
parms1.put("validFor", "1h");//
parms1.put("zone", "A");
parms1.put("student", true);
parms1.put("discountCard", true);
parms1.put("disabled", true);
parms1.put("validFrom", "2022-05-20 10:00:00");
RestAssured.given().header("content-Type", "application/json").and()
.body(parms1).when().post("/tickets").then().statusCode(400);
//200
parms1.clear();
parms1.put("birthdate", "1992-01-01");
parms1.put("validFor", "1d");
parms1.put("zone", "A");
parms1.put("student", true);
parms1.put("discountCard", true);
parms1.put("disabled", true);
parms1.put("validFrom", "2022-05-20 10:00:00");
RestAssured.given().header("content-Type", "application/json").and()
.body(parms1).when().post("/tickets").then().statusCode(200);
parms1.clear();
parms1.put("birthdate", "1992-01-01");
parms1.put("validFor", "30d");
parms1.put("zone", "A");
parms1.put("student", true);
parms1.put("discountCard", true);
parms1.put("disabled", true);
parms1.put("validFrom", "2022-05-20 10:00:00");
RestAssured.given().header("content-Type", "application/json").and()
.body(parms1).when().post("/tickets").then().statusCode(200);
}
@Test
@Order(2)
public void validateTicketTest() {
String path = "/tickets/validate";
Long ticketId =0L;
Map<String, Object> parms = new HashMap<String, Object>();
//400 //格式不对,缺少必要信息
parms.clear();
parms.put("ticketId", ticketId);
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post(path).then().statusCode(400);
//403 //ticketid不对
parms.clear();
parms.put("ticketId", ticketId);
parms.put("birthdate", "1992-01-01");
parms.put("zone", "A");
parms.put("student", true);
parms.put("disabled", true);
parms.put("date", "2022-05-22 10:00:00");
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post(path).then().statusCode(403);
//403//时间过期
ticketId = DataService.ticketList.get(0).getId();
parms.clear();
parms.put("ticketId", ticketId);
parms.put("birthdate", "1992-01-01");
parms.put("zone", "A");
parms.put("student", true);
parms.put("disabled", true);
parms.put("date", "2022-05-22 10:00:00");
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post(path).then().statusCode(403);
//200//信息一致,且有效期内
ticketId = DataService.ticketList.get(0).getId();
parms.clear();
parms.put("ticketId", ticketId);
parms.put("birthdate", "1992-01-01");
parms.put("zone", "A");
parms.put("student", true);
parms.put("disabled", true);
parms.put("date", "2022-05-20 12:00:00");
RestAssured.given().header("content-Type", "application/json").and()
.body(parms).when().post(path).then().statusCode(200);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment