package service;
import api.v1.Product;
import models.ProductModel;
import org.junit.Test;
import util.InMemoryDbTest;
import java.util.List;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
public class ProductServiceTest extends InMemoryDbTest {
@Test
public void listProducts(){
ProductService service = new ProductService(fakeUser);
List<ProductModel> products = service.findAll();
assertNotNull("null productlist",products);
assertEquals("productlist",4,products.size());
}
@Test
public void createNewProduct(){
Product aProduct = new Product();
aProduct.name = "Test product";
aProduct.price = 1000;
aProduct.sku = "Test-SKU";
ProductModel newProduct = new ProductService(fakeUser).createOrUpdate(aProduct);
assertNotNull("New product", newProduct);
assertNotNull("New product id",newProduct.id);
ProductModel productFromDb = new ProductService(fakeUser).findByName("Test product");
assertEquals("UserID",newProduct.id,productFromDb.id);
assertEquals("Name",newProduct.name,productFromDb.name);
assertEquals("Price",newProduct.price,productFromDb.price);
}
}