public Task OnInvalidInput(CreateTenantCmd op, CreateTenantResult.ICreateTenantResult result, BackofficeWriteContext state) { result.Match(created => { Assert.True(op.ValidateObject(), "The command is expected to be invalid"); Assert.True(false, "We shouldn't create a tenant with invalid input"); return(created); }, notCreated => { Assert.True(false, "Received 'NotCreated', expected InvalidRequest"); return(notCreated); }, invalidRequest => { Assert.True(true); Assert.False(op.ValidateObject(), "The command should be invalid"); return(invalidRequest); }); return(Task.CompletedTask); }
public override Task PostConditions(CreateTenantCmd op, CreateTenantResult.ICreateTenantResult result, BackofficeWriteContext state) { result.Match(created => { Assert.True(true); Assert.True(op.ValidateObject()); Assert.Contains(state.Tenants, tenant => tenant.OrganisationId.Equals(op.OrganisationId)); return(created); }, notCreated => { Assert.True(false); Assert.DoesNotContain(state.Tenants, tenant => tenant.OrganisationId.Equals(op.OrganisationId)); return(notCreated); }, invalidRequest => { Assert.False(op.ValidateObject()); Assert.True(false); return(invalidRequest); }); return(Task.CompletedTask); }