Advertisement
Neshto

Untitled

May 19th, 2025
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.52 KB | None | 0 0
  1. package com.company.oop.cosmetics.tests.models;
  2.  
  3. import com.company.oop.cosmetics.exceptions.InvalidUserInputException;
  4. import com.company.oop.cosmetics.models.CategoryImpl;
  5. import com.company.oop.cosmetics.models.GenderType;
  6. import com.company.oop.cosmetics.models.ProductImpl;
  7. import com.company.oop.cosmetics.models.contracts.Product;
  8. import org.junit.jupiter.api.Assertions;
  9. import org.junit.jupiter.api.Test;
  10.  
  11. import java.util.ArrayList;
  12. import java.util.List;
  13.  
  14. public class CategoryImplTests {
  15.  
  16. //    @Test
  17. //    public void constructor_Should_InitializeName_When_ArgumentsAreValid() {
  18. //        // Arange
  19. //        String name = "Name";
  20. //
  21. //        // Act
  22. //        CategoryImpl category = new CategoryImpl(name);
  23. //
  24. //        // Assert
  25. //        Assertions.assertNotNull(category);
  26. //
  27. //    }
  28. //
  29. //    @Test
  30. //    public void constructor_Should_InitializeProducts_When_ArgumentsAreValid() {
  31. //
  32. //        // Arange
  33. //        String name = "Name";
  34. //
  35. //        // Act
  36. //        CategoryImpl category = new CategoryImpl(name);
  37. //
  38. //        // Assert
  39. //        Assertions.assertEquals(name, category.getName(), "Not correct!");
  40. //
  41. //    }
  42. //
  43. //    @Test
  44. //    public void constructor_Should_ThrowException_When_NameIsShorterThanExpected() {
  45. //        // Arange
  46. //        String name = "Na";
  47. //
  48. //        // Act
  49.  
  50.     /// /        CategoryImpl category = new CategoryImpl(name);
  51. //
  52. //        // Assert
  53. //        Assertions.assertThrows(InvalidUserInputException.class, () -> {
  54. //            new CategoryImpl(name);
  55. //        });
  56. //
  57. //    }
  58. //
  59. //    @Test
  60. //    public void addProduct_Should_AddProductToList() {
  61. //
  62. //        //Arrange
  63. //        var category = new CategoryImpl("TestCateg");
  64. //        var product = new ProductImpl("TestProduct", "TestBrand", 10.0, GenderType.MEN);
  65. //
  66. //        //Act
  67. //        category.addProduct(product);
  68. //
  69. //        //Assert
  70. //        Assertions.assertEquals(1, category.getProducts().size());
  71. //
  72. //
  73. //    }
  74.     @Test
  75.     public void removeProduct_Should_RemoveProductFromList_When_ProductExist() {
  76.  
  77.         //Arrange
  78.         var category = new CategoryImpl("TestCateg");
  79.         var product = new ProductImpl("TestPr", "TestBrand", 10.0, GenderType.MEN);
  80.         var product2 = new ProductImpl("TestPr", "TestBrand", 10.0, GenderType.MEN);
  81.  
  82.         //Act
  83.         category.addProduct(product);
  84.         category.addProduct(product2);
  85.  
  86.  
  87.         category.removeProduct(product2);
  88.  
  89.         //Assert
  90.         Assertions.assertEquals(1, category.getProducts().size());
  91.  
  92.     }
  93.  
  94.     @Test
  95.     public void removeProduct_should_notRemoveProductFromList_when_productNotExist() {
  96.  
  97.         //Arrange
  98.         var category = new CategoryImpl("TestCateg");
  99.         var product = new ProductImpl("TestPr", "TestBrand", 10.0, GenderType.MEN);
  100.         var product2 = new ProductImpl("TestPr", "TestBrand", 10.0, GenderType.MEN);
  101.         var product3 = new ProductImpl("TestPr", "TestBrand", 10.0, GenderType.MEN);
  102.         var product4 = new ProductImpl("TestPr", "TestBrand", 10.0, GenderType.MEN);
  103.  
  104.         //Act
  105.         category.addProduct(product);
  106.         category.addProduct(product2);
  107. //        category.removeProduct(product);
  108.         category.removeProduct(product3);
  109.         category.addProduct(product4);
  110.  
  111.  
  112.         //Assert
  113. //        Assertions.assertTrue(category.getProducts().contains(product));
  114. //        Assertions.assertFalse(category.getProducts().contains(product));
  115.         Assertions.assertEquals(3, category.getProducts().size());
  116.  
  117.  
  118.     }
  119.  
  120. }
  121.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement