public void Count_ReturnsNumberOfElements() { var subject = new InMemoryRepository <RepositorySubject, int>(1, 2); Assert.That(subject.Count(), Is.EqualTo(2)); Assert.That(subject.Count(e => true), Is.EqualTo(2)); }
public void CreateAuthor_ShouldCreateValidAuthor() { // Fixture setup var authorRepo = new InMemoryRepository <Author>(); var authorService = new AuthorApplicationService(authorRepo); var expected = new Author() { FirstName = "blah", LastName = "fdlskhgdsa", Synopsis = "fhlkhdfaslkhjgoiuwer" }; // Exercise the SUT (system under test) authorService.CreateAuthor( expected.FirstName, expected.LastName, expected.Synopsis); // State verification var actual = authorRepo.AsQueryable().FirstOrDefault(); Assert.Equal(1, authorRepo.Count()); Assert.Equal(expected.FirstName, actual.FirstName); Assert.Equal(expected.LastName, actual.LastName); Assert.Equal(expected.Synopsis, actual.Synopsis); }
public void TestCreate_ShouldReturnValidPizzaObject() { // Setup Fixture var _pizzaRepo = new InMemoryRepository <Pizza>(); var _sizeRepo = new InMemoryRepository <Size>(); _sizeRepo.Add(new Size() { Description = "Familiar", Price = 21m }); var _pizzaService = new PizzaAppService(_pizzaRepo); var expected = new Pizza() { Id = 1, Name = "Big Ozzi", Size = _sizeRepo.Get(1), Toppings = new List <Topping>() { new Topping { Name = "Cheese", Price = 3.5m } } }; // Execute SUT var actual = _pizzaService.Create(expected.Name, expected.Size, expected.Toppings); // Verify Outcomes Assert.Equal(1, _pizzaRepo.Count()); ArePizzasSame(expected, actual); }
public void CreateProduct_ShouldCreateValidProduct() { var productRepo = new InMemoryRepository <Product>(); var productService = new ProductService(productRepo); //Fixture Setup var expected = new Product() { CategoryId = 1, ProductName = "Product test", Description = "this is description", Cost = 12, Price = 15, VendorId = 1 }; //Exercise the SUT (system under test) productService.CreateProduct(expected.CategoryId, expected.ProductName, expected.Description, expected.Cost.Value, expected.Price.Value, expected.VendorId); // State Verification var actual = productRepo.AsQueryable().FirstOrDefault(); Assert.Equal(1, productRepo.Count()); Assert.Equal(expected.CategoryId, actual.CategoryId); Assert.Equal(expected.ProductName, actual.ProductName); Assert.Equal(expected.Description, actual.Description); Assert.Equal(expected.Cost, actual.Cost); Assert.Equal(expected.Price, actual.Price); Assert.Equal(expected.VendorId, actual.VendorId); }
public void UpdateCustomer_ShouldUpdateValidCustomer() { //Fixture Setup var customer = new Customer() { CustomerCode = "1002", FirstName = "Yang", MiddleName = "Ling", LastName = "Yiao", DateOfBirth = DateTime.Now, Gender = "Female", StreetAddress = "6 Kimbery Ave", Suburb = "Chatswood", PostCode = "2065", State = "Sydney", PhoneNo = "4325345435345" }; var customerRepo = new InMemoryRepository <Customer>(); customerRepo.Add(customer); var customerService = new CustomerService(customerRepo); var expected = new Customer() { CustomerCode = "1001", FirstName = "Ken", MiddleName = "Yew", LastName = "Hang", DateOfBirth = DateTime.Now, Gender = "Male", StreetAddress = "5 Kimbery Ave", Suburb = "Lane Cove", PostCode = "2066", State = "Sydney", PhoneNo = "4325435345" }; //Exercise the SUT (system under test) customerService.UpdateCustomer(customer.Id, expected.DateOfBirth, expected.FirstName, expected.LastName, expected.MiddleName, expected.Gender, expected.PhoneNo, expected.StreetAddress, expected.PostCode, expected.Suburb, expected.State); // State Verification var actual = customerRepo.Get(customer.Id); Assert.Equal(1, customerRepo.Count()); Assert.Equal(expected.FirstName, actual.FirstName); Assert.Equal(expected.LastName, actual.LastName); Assert.Equal(expected.DateOfBirth, actual.DateOfBirth); Assert.Equal(expected.Gender, actual.Gender); Assert.Equal(expected.StreetAddress, actual.StreetAddress); Assert.Equal(expected.Suburb, actual.Suburb); Assert.Equal(expected.State, actual.State); Assert.Equal(expected.PostCode, actual.PostCode); Assert.Equal(expected.PhoneNo, actual.PhoneNo); Assert.Equal(expected.CustomerCode, actual.CustomerCode); }
public void Add_AlreadyExisting_AddThemNonetheless() { var subject = new InMemoryRepository <RepositorySubject, int>(1, 2); subject.Add(1); Assert.That(subject.Count(), Is.EqualTo(3)); Assert.That(subject.FindAll(e => e.Id == 1).Count, Is.EqualTo(2)); }
public void Add_AddsItems() { var subject = new InMemoryRepository <RepositorySubject, int>(1, 2); subject.Add(3); Assert.That(subject.Count(), Is.EqualTo(3)); Assert.That(subject.FindOne(e => e.Id == 3), Is.Not.Null); }
public void Remove_NotAdded_NoOp() { var subject = new InMemoryRepository <RepositorySubject, int>(1, 2); var nonExistingEntity = new RepositorySubject(3); subject.Remove(nonExistingEntity); Assert.That(subject.Count(), Is.EqualTo(2)); }
public void Remove_NotAddedButSameId_RemovesThem() { var subject = new InMemoryRepository <RepositorySubject, int>(1, 2); var existingEntity = new RepositorySubject(1); subject.Remove(existingEntity); Assert.That(subject.Count(), Is.EqualTo(1)); Assert.That(subject.Find(1), Is.Empty); }
public void Ctor_NoInitialData_Empty() { var subject = new InMemoryRepository <RepositorySubject, int>(); Assert.That(subject.Count(), Is.EqualTo(0)); Assert.That(subject.Count(s => true), Is.EqualTo(0)); Assert.That(subject.Find(), Is.Empty); Assert.That(subject.Find(s => true), Is.Empty); Assert.That(subject.Find(0), Is.Empty); Assert.That(subject.FindAll(), Is.Empty); Assert.That(subject.FindAll(s => true), Is.Empty); Assert.That(() => subject.FindOne(0), Throws.InvalidOperationException); Assert.That(() => subject.FindOne(s => true), Throws.InvalidOperationException); RepositorySubject found; Assert.That(subject.TryFindOne(s => true, out found), Is.False); Assert.That(found, Is.Null); }
public void CreateCustomer_ShouldCreateValidCustomer() { var customerRepo = new InMemoryRepository <Customer>(); var customerService = new CustomerService(customerRepo); //Fixture Setup var expected = new Customer() { CustomerCode = "1001", FirstName = "Ken", MiddleName = "Yew", LastName = "Hang", DateOfBirth = DateTime.Now, Gender = "Male", StreetAddress = "5 Kimbery Ave", Suburb = "Lane Cove", PostCode = "2066", State = "Sydney", PhoneNo = "4325435345" }; //Exercise the SUT (system under test) //customerService.CreateCustomer(expected.CustomerCode, expected.DateOfBirth, expected.FirstName, // expected.LastName, expected.MiddleName, expected.Gender, expected.PhoneNo, expected.StreetAddress, // expected.PostCode, expected.Suburb, expected.State); // State Verification var actual = customerRepo.AsQueryable().FirstOrDefault(); Assert.Equal(1, customerRepo.Count()); Assert.Equal(expected.FirstName, actual.FirstName); Assert.Equal(expected.LastName, actual.LastName); Assert.Equal(expected.DateOfBirth, actual.DateOfBirth); Assert.Equal(expected.Gender, actual.Gender); Assert.Equal(expected.StreetAddress, actual.StreetAddress); Assert.Equal(expected.Suburb, actual.Suburb); Assert.Equal(expected.State, actual.State); Assert.Equal(expected.PostCode, actual.PostCode); Assert.Equal(expected.PhoneNo, actual.PhoneNo); Assert.Equal(expected.CustomerCode, actual.CustomerCode); }
public void UpdateAuthor_ShouldUpdateValidAuthor() { // Fixture setup var author = new Author() { FirstName = "fhlkhsdgasd", LastName = "klhlkhjsdg", Synopsis = "zlkhzoiutqwp" }; var authorRepo = new InMemoryRepository <Author>(); authorRepo.Add(author); var authorService = new AuthorApplicationService(authorRepo); var expected = new Author() { FirstName = "blah", LastName = "fdlskhgdsa", Synopsis = "fhlkhdfaslkhjgoiuwer" }; // Exercise the SUT (system under test) authorService.UpdateAuthor( author.Id, expected.FirstName, expected.LastName, expected.Synopsis); // State verification var actual = authorRepo.Get(author.Id); Assert.Equal(1, authorRepo.Count()); Assert.Equal(expected.FirstName, actual.FirstName); Assert.Equal(expected.LastName, actual.LastName); Assert.Equal(expected.Synopsis, actual.Synopsis); }
public void Count_PerformsFiltering() { var subject = new InMemoryRepository <RepositorySubject, int>(1, 2); Assert.That(subject.Count(e => e.Property.Equals("2")), Is.EqualTo(1)); }