public void Should_Throw_Validation_Exception_For_Empty_Name() { // Arrange var dto = new UpdateDummyModelDto() { Id = 1, }; // Act var validator = new UpdateDummyModelDtoValidator(); var validationResult = validator.Validate(dto); // Assert validationResult.IsValid.Should().Be(false); validationResult.Errors[0].ErrorMessage.Should().Be("'Name' must not be empty."); validationResult.Errors[0].ErrorCode.Should().Be("NotEmptyValidator"); validationResult.Errors[0].PropertyName.Should().Be("Name"); validationResult.Errors[0].Severity.Should().Be(Severity.Error); }
public async Task Verify_PutDummyModel_ResponseStatusCode_Unauthorized_With_Message_Unauthorized() { // Arrange // Act int dummyModelId = int.MaxValue - 1; var dto = new UpdateDummyModelDto { Id = dummyModelId, Name = "new name", }; var(response, deserializedResponse) = await this._client.PutAsync <DummyModelOutput>($"/api/v1/DummyModels/{dummyModelId}", dto); // Assert response.StatusCode.Should().Be(HttpStatusCode.Unauthorized); deserializedResponse.Success.Should().BeFalse(); deserializedResponse.Message.Should().Be(ResponseMessages.AuthenticationInvalid); deserializedResponse.Data.Should().BeNull(); }
public void Should_Throw_Validation_Exception_For_Id_Less_0(int id) { // Arrange var dto = new UpdateDummyModelDto() { Id = id, Name = "name", }; // Act var validator = new UpdateDummyModelDtoValidator(); var validationResult = validator.Validate(dto); // Assert validationResult.IsValid.Should().Be(false); validationResult.Errors[0].ErrorCode.Should().Be("GreaterThanValidator"); validationResult.Errors[0].PropertyName.Should().Be("Id"); validationResult.Errors[0].Severity.Should().Be(Severity.Error); }
public void Should_Throw_Validation_Exception_For_Empty_Id_and_Name() { // Arrange var dto = new UpdateDummyModelDto(); // Act var validator = new UpdateDummyModelDtoValidator(); var validationResult = validator.Validate(dto); // Assert validationResult.IsValid.Should().Be(false); var errorMessages = validationResult.Errors.Select(e => e.ErrorMessage); errorMessages.Contains("'Id' must not be empty.").Should().Be(true); errorMessages.Contains("'Name' must not be empty.").Should().Be(true); var propertyName = validationResult.Errors.Select(e => e.PropertyName); propertyName.Contains("Id").Should().Be(true); propertyName.Contains("Name").Should().Be(true); }
public async Task Verify_PutDummyModel_ResponseStatusCode_Forbidden_With_Message_Forbidden_For_Basic_Users() { // Arrange this._userBuilder.BuildCustomBasicUser(userName: "******", email: "*****@*****.**"); // Act int dummyModelId = int.MaxValue - 1; var dto = new UpdateDummyModelDto { Id = dummyModelId, Name = "new name", }; await this._client.Authenticate(this._accountsService, "Lewis"); var(response, deserializedResponse) = await this._client.PutAsync <DummyModelOutput>($"/api/v1/DummyModels/{dummyModelId}", dto); // Assert response.StatusCode.Should().Be(HttpStatusCode.Forbidden); deserializedResponse.Success.Should().BeFalse(); deserializedResponse.Message.Should().Be(ResponseMessages.AuthorizationInvalid); deserializedResponse.Data.Should().BeNull(); }
public async Task Verify_PutDummyModel_ResponseStatusCode_NotFound_With_Message_DummyModel_NotFound() { // Arrange this._userBuilder.BuildCustomAdminUser(userName: "******", email: "*****@*****.**"); // Act int dummyModelId = int.MaxValue - 1; var dto = new UpdateDummyModelDto { Id = dummyModelId, Name = "new name", }; await this._client.Authenticate(this._accountsService, "Hilary"); var(response, deserializedResponse) = await this._client.PutAsync <DummyModelOutput>($"/api/v1/DummyModels/{dummyModelId}", dto); // Assert response.StatusCode.Should().Be(HttpStatusCode.NotFound); deserializedResponse.Success.Should().BeFalse(); deserializedResponse.Message.Should().Be(ResponseMessages.NotFound); deserializedResponse.Data.Should().BeNull(); }
public void Should_Throw_Validation_Exception_For_Larger_Name() { // Arrange string invalidName = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do" + "eiusmod tempor incididunt ut labore et dolore magna aliqua."; var dto = new UpdateDummyModelDto() { Id = 1, Name = invalidName, }; // Act var validator = new UpdateDummyModelDtoValidator(); var validationResult = validator.Validate(dto); // Assert validationResult.IsValid.Should().Be(false); validationResult.Errors[0].ErrorMessage.Should().Be($"The length of 'Name' must be" + $" {DummyModelValidationRules.NameMaximumLength} characters or fewer." + $" You entered {invalidName.Length} characters."); validationResult.Errors[0].ErrorCode.Should().Be("MaximumLengthValidator"); validationResult.Errors[0].PropertyName.Should().Be("Name"); validationResult.Errors[0].Severity.Should().Be(Severity.Error); }