Add ShoppingCart test
parent
56d0affd83
commit
c4335b5792
|
|
@ -0,0 +1,72 @@
|
|||
import org.example.Constants;
|
||||
import org.example.Product;
|
||||
import org.example.ShoppingCart;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
class ShoppingCartTest {
|
||||
|
||||
private ShoppingCart cart;
|
||||
private Product product1;
|
||||
private Product product2;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() {
|
||||
cart = new ShoppingCart();
|
||||
product1 = new Product(1, "Produkt 1", 0.5f, 50f, Constants.lowVat);
|
||||
product2 = new Product(2, "Produkt 2", 1.0f, 500f, Constants.highVat);
|
||||
}
|
||||
|
||||
@Test
|
||||
void addProduct() {
|
||||
cart.addProduct(product1);
|
||||
cart.addProduct(product1);
|
||||
|
||||
assertEquals(2, cart.getProductQuantity(product1));
|
||||
}
|
||||
|
||||
@Test
|
||||
void removeProduct() {
|
||||
cart.addProduct(product1);
|
||||
cart.addProduct(product1);
|
||||
|
||||
cart.removeProduct(product1);
|
||||
|
||||
assertEquals(1, cart.getProductQuantity(product1));
|
||||
}
|
||||
|
||||
@Test
|
||||
void removeProductZero() {
|
||||
cart.removeProduct(product1);
|
||||
|
||||
assertEquals(0, cart.getProductQuantity(product1));
|
||||
}
|
||||
|
||||
@Test
|
||||
void setProductQuantityTo() {
|
||||
cart.setProductQuantity(product1, 5);
|
||||
|
||||
assertEquals(5, cart.getProductQuantity(product1));
|
||||
}
|
||||
|
||||
@Test
|
||||
void setProductQuantityToZeroToRemove() {
|
||||
cart.setProductQuantity(product1, 3);
|
||||
cart.setProductQuantity(product1, 0);
|
||||
|
||||
assertEquals(0, cart.getProductQuantity(product1));
|
||||
}
|
||||
|
||||
@Test
|
||||
void clearProducts() {
|
||||
cart.addProduct(product1);
|
||||
cart.addProduct(product2);
|
||||
|
||||
cart.clearProducts();
|
||||
|
||||
assertEquals(0, cart.getProductQuantity(product1));
|
||||
assertEquals(0, cart.getProductQuantity(product2));
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue