Code Duplication    Length = 19-19 lines in 2 locations

src/Context/JsonMatcher.php 2 locations

@@ 45-63 (lines=19) @@
42
    }
43
44
    /** @Then in the json, :path should match: */
45
    public function path_should_match(string $path, PyStringNode $pattern)
46
    {
47
        $value = $this->getValue($path);
48
        $matcher = $this->factory->createMatcher();
49
50
        $json = json_encode($value);
51
52
        if ($matcher->match($value, $pattern->getRaw())) {
53
            return;
54
        }
55
56
        throw new InvalidArgumentException(
57
            sprintf(
58
                'The json path "%s" does not match with the given pattern (error : %s)',
59
                $path,
60
                $matcher->getError()
61
            )
62
        );
63
    }
64
65
    /** @Then in the json, :path should not match: */
66
    public function path_should_not_match(string $path, PyStringNode $pattern)
@@ 66-84 (lines=19) @@
63
    }
64
65
    /** @Then in the json, :path should not match: */
66
    public function path_should_not_match(string $path, PyStringNode $pattern)
67
    {
68
        $value = $this->getValue($path);
69
        $matcher = $this->factory->createMatcher();
70
71
        $json = json_encode($value);
72
73
        if (!$matcher->match($value, $pattern->getRaw())) {
74
            return;
75
        }
76
77
        throw new InvalidArgumentException(
78
            sprintf(
79
                'The json path "%s" matches with the given pattern (error : %s)',
80
                $path,
81
                $matcher->getError()
82
            )
83
        );
84
    }
85
}
86