public void GetProductByName_Returns_Product_If_Correct_Name()
        {
            // Arrange
            Product        product = GetProductWithName("Name");
            ProductContext ctx     = new ProductContext(new DbContextOptions <ProductContext>());

            ctx.Products = GetProductDbSet(product);
            SqlProductRepository target = new SqlProductRepository(ctx);

            // Act
            var result = target.GetProductByName("Name");

            // Assert
            Assert.IsAssignableFrom <Product>(result);
        }
        public void GetProductByName_Returns_Null_If_No_Product_Found()
        {
            // Arrange
            Product        product = GetProductWithName("Name");
            ProductContext ctx     = new ProductContext(new DbContextOptions <ProductContext>());

            ctx.Products = GetProductDbSet(product);
            SqlProductRepository target = new SqlProductRepository(ctx);

            // Act
            var result = target.GetProductByName("FalseName");

            // Assert
            Assert.Null(result);
        }