Fix JsonPartialMatcher when using property names with dot (#1216)

Fix JsonPartialMatcher when using property names with dot (#1216)
This commit is contained in:
Stef Heyenrath
2024-12-06 09:23:31 +01:00
committed by GitHub
parent 4b3e9feca0
commit 7f640dfa0d
2 changed files with 18 additions and 1 deletions

View File

@@ -82,7 +82,7 @@ public abstract class AbstractJsonPartialMatcher : JsonMatcher
case JTokenType.Object:
var nestedValues = value.ToObject<Dictionary<string, JToken>>();
return nestedValues?.Any() != true ||
nestedValues.All(pair => IsMatch(pair.Value, input.SelectToken(pair.Key)));
nestedValues.All(pair => IsMatch(pair.Value, input.SelectToken(pair.Key) ?? input[pair.Key])); // First try to select based on JPath expression, else just get the value.
case JTokenType.Array:
var valuesArray = value.ToObject<JToken[]>();