public static Matcher<? super Object> hasJsonPath(String jsonPath) {
        return describedAs("has json path %0",
                isJson(withJsonPath(jsonPath)),
                jsonPath);
    }
@Test
    public void willMatchIndefiniteJsonPathsEvaluatedToEmptyLists() {
        // This is just a test to demonstrate that indefinite paths
        // will always match, regardless of result. This is because
        // the evaluation of these expressions will return lists,
        // even though they may be empty.
        String json = "{\"items\": []}";
        assertThat(json, hasJsonPath("$.items[*].name"));
        assertThat(json, hasJsonPath("$.items[*]"));
        assertThat(json, hasJsonPath("$.items[*]", hasSize(0)));
    }