Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions src/main/java/com/example/swttesting/Orders.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,14 @@ public Orders(String orderDate, String orderStatus, double orderTotal, ShoppingC

}

public Orders(String orderDate, String orderStatus, double orderTotal, ShoppingCart shoppingCart,int orderID) {
this.orderID = orderID;
this.orderDate = orderDate;
this.orderStatus = orderStatus;
this.orderTotal = orderTotal;
this.shoppingCart = shoppingCart;

}
public int getOrderID() {
return orderID;
}
Expand Down
183 changes: 155 additions & 28 deletions src/test/java/com/example/swttesting/OrdersTest.java
Original file line number Diff line number Diff line change
@@ -1,54 +1,181 @@
package com.example.swttesting;

import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import org.junit.jupiter.api.*;
import static org.junit.jupiter.api.Assertions.*;

@DisplayName("Orders class tests")
class OrdersTest {


private Orders order;
private Orders order2;
private ShoppingCart shoppingCart;
private ShoppingCart shoppingCart2;

@BeforeEach
void setUp() {
shoppingCart = new ShoppingCart();
order = new Orders("2024-04-23 10:00:00", "confirmed", 1012.54, shoppingCart,0);
shoppingCart2 = new ShoppingCart();
order2 = new Orders("2024-06-13 09:00:00", "confirmed", 1600.54, shoppingCart2);
}

@Test
void getOrderID() {

@AfterEach
void tearDown() {
order = null;
order2=null;
shoppingCart2 = null;
shoppingCart = null;
}

@Test
void setOrderID() {
}
@Nested
@Order(1)
class ConstructorTests {

@Test
void getOrderDate() {
@Test
@DisplayName("Test Constructor with Valid Input")
void testConstructor_ValidInput() {
assertEquals(0, order.getOrderID(), "OrderID should be set correctly");
assertEquals("2024-04-23 10:00:00", order.getOrderDate(), "OrderDate should be set correctly");
assertEquals("confirmed", order.getOrderStatus(), "OrderStatus should be set correctly");
assertEquals(1012.54, order.getOrderTotal(), "OrderTotal should be set correctly");
assertEquals(shoppingCart, order.getShoppingCart(), "ShoppingCart should be set correctly");
}
}

@Test
void setOrderDate() {
}
@Nested
@Order(2)
class GetterTests {

@Test
void getOrderStatus() {
}
@Test
@DisplayName("Test Get OrderID")
void testGetOrderID() {
assertEquals(0, order.getOrderID(), "OrderID should be retrieved correctly");
}

@Test
@DisplayName("Test Get OrderDate")
void testGetOrderDate() {
assertEquals("2024-04-23 10:00:00", order.getOrderDate(), "OrderDate should be retrieved correctly");
}

@Test
@DisplayName("Test Get OrderStatus")
void testGetOrderStatus() {
assertEquals("confirmed", order.getOrderStatus(), "OrderStatus should be retrieved correctly");
}

@Test
void setOrderStatus() {
@Test
@DisplayName("Test Get OrderTotal")
void testGetOrderTotal() {
assertEquals(1012.54, order.getOrderTotal(), "OrderTotal should be retrieved correctly");
}

@Test
@DisplayName("Test Get ShoppingCart")
void testGetShoppingCart() {
assertEquals(shoppingCart, order.getShoppingCart(), "ShoppingCart should be retrieved correctly");
}
}

@Test
void getOrderTotal() {
@Nested
@Order(3)
class GetterTests2 {

@Test
@DisplayName("Test Get OrderDate")
void testGetOrderDate() {
assertEquals("2024-06-13 09:00:00", order2.getOrderDate(), "OrderDate should be retrieved correctly");
}

@Test
@DisplayName("Test Get OrderStatus")
void testGetOrderStatus() {
assertEquals("confirmed", order2.getOrderStatus(), "OrderStatus should be retrieved correctly");
}

@Test
@DisplayName("Test Get OrderTotal")
void testGetOrderTotal() {
assertEquals(1600.54, order2.getOrderTotal(), "OrderTotal should be retrieved correctly");
}

@Test
@DisplayName("Test Get ShoppingCart")
void testGetShoppingCart() {
assertEquals(shoppingCart2, order2.getShoppingCart(), "ShoppingCart should be retrieved correctly");
}
}

@Test
void setOrderTotal() {

@Nested
@Order(4)
class SetterTests {

@Test
@DisplayName("Test Set OrderID")
void testSetOrderID() {
order.setOrderID(1);
assertEquals(1, order.getOrderID(), "OrderID should be updated correctly");
}

@Test
@DisplayName("Test Set OrderDate")
void testSetOrderDate() {
order.setOrderDate("2024-04-24 10:00:00");
assertEquals("2024-04-24 10:00:00", order.getOrderDate(), "OrderDate should be updated correctly");
}

@Test
@DisplayName("Test Set OrderStatus")
void testSetOrderStatus() {
order.setOrderStatus("pending");
assertEquals("pending", order.getOrderStatus(), "OrderStatus should be updated correctly");
}

@Test
@DisplayName("Test Set OrderTotal")
void testSetOrderTotal() {
order.setOrderTotal(1020.55);
assertEquals(1020.55, order.getOrderTotal(), "OrderTotal should be updated correctly");
}

@Test
@DisplayName("Test Set ShoppingCart")
void testSetShoppingCart() {
ShoppingCart newShoppingCart = new ShoppingCart();
order.setShoppingCart(newShoppingCart);
assertEquals(newShoppingCart, order.getShoppingCart(), "ShoppingCart should be updated correctly");
}
}

@Test
void getShoppingCart() {
@Nested
@Order(5)
class CardVerificationTests {

@Test
@DisplayName("Test Verify Card with Valid Card")
void testVerifyCard_ValidCard() {
assertTrue(Orders.verifyCard("1234567890123456", "123", "08", "2024"), "Valid card should pass verification");
}

@Test
@DisplayName("Test Verify Card with Invalid Card")
void testVerifyCard_InvalidCard() {
assertFalse(Orders.verifyCard("1234567890123456", "123", "04", "2023"), "Invalid card should fail verification");
}
}

@Test
void setShoppingCart() {
@Nested
@Order(6)
class CurrentDateTimeTests {

@Test
@DisplayName("Test Get Current DateTime As String")
void testGetCurrentDateTimeAsString() {
String currentDateTime = Orders.getCurrentDateTimeAsString();
assertNotNull(currentDateTime, "Current date and time should not be null");
assertTrue(currentDateTime.matches("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}"), "Current date and time should be in the correct format");
}
}
}
}
Binary file modified target/classes/com/example/swttesting/Orders.class
Binary file not shown.
Binary file modified target/classes/com/example/swttesting/shoppingCartController.class
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified target/test-classes/com/example/swttesting/OrdersTest.class
Binary file not shown.