Example #1
0
 public void PathWithInvalidEscapeSequenceShouldFail(string path)
 {
     // Arrange, Act & Assert
     Assert.Throws <JsonPatchException>(() =>
     {
         var parsedPath = new ParsedPath(path);
     });
 }
Example #2
0
        public void ParsingValidPathShouldSucceed(string path, string[] expected)
        {
            // Arrange & Act
            var parsedPath = new ParsedPath(path);

            // Assert
            Assert.Equal(expected, parsedPath.Segments);
        }
Example #3
0
        public ObjectVisitor(ParsedPath path, IContractResolver contractResolver)
        {
            if (contractResolver == null)
            {
                throw new ArgumentNullException(nameof(contractResolver));
            }

            _path             = path;
            _contractResolver = contractResolver;
        }
Example #4
0
 /// <summary>
 /// Initializes a new instance of <see cref="ObjectVisitor"/>.
 /// </summary>
 /// <param name="path">The path of the JsonPatch operation</param>
 /// <param name="contractResolver">The <see cref="IContractResolver"/>.</param>
 /// <param name="adapterFactory">The <see cref="IAdapterFactory"/> to use when creating adaptors.</param>
 public ObjectVisitor(ParsedPath path, IContractResolver contractResolver, IAdapterFactory adapterFactory)
 {
     _path             = path;
     _contractResolver = contractResolver ?? throw new ArgumentNullException(nameof(contractResolver));
     _adapterFactory   = adapterFactory ?? throw new ArgumentNullException(nameof(adapterFactory));
 }
Example #5
0
 /// <summary>
 /// Initializes a new instance of <see cref="ObjectVisitor"/>.
 /// </summary>
 /// <param name="path">The path of the JsonPatch operation</param>
 /// <param name="contractResolver">The <see cref="IContractResolver"/>.</param>
 public ObjectVisitor(ParsedPath path, IContractResolver contractResolver)
     : this(path, contractResolver, new AdapterFactory())
 {
 }
Example #6
0
 /// <summary>
 /// Initializes a new instance of <see cref="ObjectVisitor"/>.
 /// </summary>
 /// <param name="path">The path of the JsonPatch operation</param>
 /// <param name="contractResolver">The <see cref="IContractResolver"/>.</param>
 public ObjectVisitor(ParsedPath path, IContractResolver contractResolver)
     : this(path, contractResolver, AdapterFactory.Default)
 {
 }