public void AddItems_WhenUsingAddCommand(IProduct product1, IProduct product2) { // Arrange var addProduct1Command = new AddCommand(_ProductList, product1); var addProduct2Command = new AddCommand(_ProductList, product2); // Act _productInvoker.AddCommand("addproduct1", addProduct1Command); _productInvoker.AddCommand("addproduct2", addProduct2Command); _productInvoker.InvokeCommand("addproduct1"); _productInvoker.InvokeCommand("addproduct2"); // Assert _ProductList.Products.Should().NotBeNullOrEmpty() .And .HaveCount(2) .And .OnlyHaveUniqueItems() .And .Contain(product1) .And .Contain(product2); }