Example #1
0
 /// <summary>
 /// Initializes a new instance of <see cref="JsonPatchError"/>.
 /// </summary>
 /// <param name="affectedObject">The object that is affected by the error.</param>
 /// <param name="operation">The <see cref="Operation"/> that caused the error.</param>
 /// <param name="errorMessage">The error message.</param>
 public JsonPatchError(
      object affectedObject,
      Operation operation,
     [NotNull] string errorMessage)
 {
     AffectedObject = affectedObject;
     Operation = operation;
     ErrorMessage = errorMessage;
 }
        public void ApplyTo_JsonPatchDocument_PrefixModelState()
        {
            // Arrange
            var operation = new Operation<Customer>("add", "Customer/CustomerId", from: null, value: "TestName");
            var patchDoc = new JsonPatchDocument<Customer>();
            patchDoc.Operations.Add(operation);

            var modelState = new ModelStateDictionary();

            // Act
            patchDoc.ApplyTo(new Customer(), modelState, "jsonpatch");

            // Assert
            var error = Assert.Single(modelState["jsonpatch.Customer"].Errors);
            Assert.Equal("Property does not exist at path 'Customer/CustomerId'.", error.ErrorMessage);
        }
        public void ApplyTo_JsonPatchDocument_ModelState()
        {
            // Arrange
            var operation = new Operation<Customer>("add", "Customer/CustomerId", from: null, value: "TestName");
            var patchDoc = new JsonPatchDocument<Customer>();
            patchDoc.Operations.Add(operation);

            var modelState = new ModelStateDictionary();

            // Act
            patchDoc.ApplyTo(new Customer(), modelState);

            // Assert
            var error = Assert.Single(modelState["Customer"].Errors);
            Assert.Equal("The property at path 'Customer/CustomerId' could not be added.", error.ErrorMessage);
        }