public async Task GetProduct()
        {
            _productRepository.Setup(mock => mock.ReadAsync(_expectedProduct.Id)).ReturnsAsync(ToDal(_expectedProduct));

            var actualProduct = await _productFunctionality.ReadAsync(_expectedProduct.Id.ToString());

            AssertProductsAreEqual(_expectedProduct, actualProduct);
        }
        public async Task <Product> GetProduct(string id)
        {
            ServiceContract.RequireNotNullOrWhitespace(id, nameof(id));

            var bllProduct = await _productFunctionality.ReadAsync(id);

            var result = FromBll(bllProduct);

            FulcrumAssert.IsNotNull(result, nameof(result));
            FulcrumAssert.IsValidated(result, $"{Namespace}: 41042A82-2D71-427F-BBBF-9CDC7545E590");
            return(result);
        }