Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package serviceTests; import com.pharmacy.pharmacyweb.configuration.ConnectionConfig; import com.pharmacy.pharmacyweb.domain.products.Appliance; import com.pharmacy.pharmacyweb.domain.products.Cosmetic; import com.pharmacy.pharmacyweb.domain.products.Medicine; import com.pharmacy.pharmacyweb.domain.products.Misc; import com.pharmacy.pharmacyweb.domain.products.Product; import com.pharmacy.pharmacyweb.repository.ApplianceRepository; import com.pharmacy.pharmacyweb.repository.CosmeticRepository; import com.pharmacy.pharmacyweb.repository.MedicineRepository; import com.pharmacy.pharmacyweb.repository.MiscRepository; import com.pharmacy.pharmacyweb.repository.ProductRepository; import com.pharmacy.pharmacyweb.services.Impl.CountProducts; import static com.pharmacy.pharmacyweb.services.Impl.CountProducts.ctx; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import static org.testng.Assert.*; import org.testng.annotations.AfterClass; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeClass; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; /** * * @author J3nny */ public class CountProductsTestNGTest { public static ApplicationContext ctx; private static ProductRepository productRepo; private static ApplianceRepository applianceRepo; private static CosmeticRepository cosmeticRepo; private static MedicineRepository medicineRepo; private static MiscRepository miscRepo; private static CountProducts counter; public CountProductsTestNGTest() { } // TODO add test methods here. // The methods must be annotated with annotation @Test. For example: // // @Test // public void hello() {} @BeforeClass public static void setUpClass() throws Exception { ctx = new AnnotationConfigApplicationContext(ConnectionConfig.class); counter = new CountProducts(); productRepo = ctx.getBean(ProductRepository.class); applianceRepo = ctx.getBean(ApplianceRepository.class); cosmeticRepo = ctx.getBean(CosmeticRepository.class); medicineRepo = ctx.getBean(MedicineRepository.class); miscRepo = ctx.getBean(MiscRepository.class); productRepo.deleteAll(); applianceRepo.deleteAll(); cosmeticRepo.deleteAll(); medicineRepo.deleteAll(); miscRepo.deleteAll(); Product product = new Product.Builder() //.id(0) .productDescription("coco").productName("nestle coco").price(31.50).quantity(3).build(); Appliance appliance = new Appliance.Builder() //.id(0) .modelCode("asd123").price(21.95).productName("Electric Toothbrush") .productDescription("Toothbrush").quantity(7).build(); Cosmetic cosmetic = new Cosmetic.Builder() //.id(0) .cosmeticClass("Hair").productDescription("Shampoo").productName("Pantine Shampoo").price(30.50) .quantity(3).build(); Medicine medicine = new Medicine.Builder() //.id(0) .productDescription("Cancer Antidote").productName("L Davids - Cancer-Away").price(349.95) .quantity(39).treats("cancer").build(); Misc misc = new Misc.Builder() //.id(0) .productDescription("coco").productName("nestle coco").price(31.50).quantity(3).build(); productRepo.save(product); applianceRepo.save(appliance); cosmeticRepo.save(cosmetic); medicineRepo.save(medicine); miscRepo.save(misc); } @AfterClass public static void tearDownClass() throws Exception { } @BeforeMethod public void setUpMethod() throws Exception { } @AfterMethod public void tearDownMethod() throws Exception { } @Test public void countProducts() { assertEquals(counter.count(), 5); } }