public async Task GetCatalogProductDetail_Correctly() { var catalogProduct = this._testFixture.CatalogProduct; var catalogProductId = catalogProduct.CatalogProductId; var catalogCategory = this._testFixture.CatalogCategory; var catalogCategoryId = catalogCategory.CatalogCategoryId; var catalog = this._testFixture.Catalog; var catalogId = catalog.CatalogId; var request = new GetCatalogProductDetailRequest { CatalogProductId = catalogProductId }; await this._testFixture.ExecuteTestRequestHandler <GetCatalogProductDetailRequest, GetCatalogProductDetailResult>(request, result => { result.ShouldNotBeNull(); result.CatalogProduct.ShouldNotBeNull(); result.CatalogProduct.CatalogProductId.ShouldBe(catalogProductId); result.CatalogProduct.DisplayName.ShouldBe(catalogProduct.DisplayName); result.CatalogCategory.ShouldNotBeNull(); result.CatalogCategory.CatalogCategoryId.ShouldBe(catalogCategoryId); result.CatalogCategory.DisplayName.ShouldBe(catalogCategory.DisplayName); result.Catalog.ShouldNotBeNull(); result.Catalog.CatalogId.ShouldBe(catalogId); result.Catalog.CatalogName.ShouldBe(catalog.DisplayName); }); }
public async Task Should_Validate_Request_Correctly() { var request = new GetCatalogProductDetailRequest { CatalogProductId = (CatalogProductId)Guid.Empty }; await this._testFixture.ExecuteValidationTest(request, result => { result.ShouldHaveValidationErrorFor(x => x.CatalogProductId); }); }
public async Task Invalid_Request_Should_Throw_ValidationException() { var request = new GetCatalogProductDetailRequest { CatalogProductId = (CatalogProductId)Guid.Empty }; await Should.ThrowAsync <ValidationException>(async() => await this._testFixture.ExecuteTestRequestHandler <GetCatalogProductDetailRequest, GetCatalogProductDetailResult>(request, result => {})); }
public async Task GetCatalogProductDetail_NotFound_CatalogProduct_Still_Work_Correctly() { var request = new GetCatalogProductDetailRequest { CatalogProductId = IdentityFactory.Create <CatalogProductId>() }; await this._testFixture.ExecuteTestRequestHandler <GetCatalogProductDetailRequest, GetCatalogProductDetailResult>(request, result => { result.ShouldNotBeNull(); result.IsNull.ShouldBe(true); result.CatalogCategory.ShouldNotBeNull(); result.CatalogCategory.CatalogCategoryId.ShouldBeNull(); string.IsNullOrWhiteSpace(result.CatalogCategory.DisplayName).ShouldBeTrue(); result.Catalog.ShouldNotBeNull(); result.Catalog.CatalogId.ShouldBeNull(); string.IsNullOrWhiteSpace(result.Catalog.CatalogName).ShouldBeTrue(); }); }