...

Text file src/github.com/jmespath/go-jmespath/compliance/indices.json

Documentation: github.com/jmespath/go-jmespath/compliance

     1[{
     2    "given":
     3        {"foo": {"bar": ["zero", "one", "two"]}},
     4     "cases": [
     5         {
     6            "expression": "foo.bar[0]",
     7            "result": "zero"
     8         },
     9         {
    10            "expression": "foo.bar[1]",
    11            "result": "one"
    12         },
    13         {
    14            "expression": "foo.bar[2]",
    15            "result": "two"
    16         },
    17         {
    18            "expression": "foo.bar[3]",
    19            "result": null
    20         },
    21         {
    22            "expression": "foo.bar[-1]",
    23            "result": "two"
    24         },
    25         {
    26            "expression": "foo.bar[-2]",
    27            "result": "one"
    28         },
    29         {
    30            "expression": "foo.bar[-3]",
    31            "result": "zero"
    32         },
    33         {
    34            "expression": "foo.bar[-4]",
    35            "result": null
    36         }
    37     ]
    38},
    39{
    40    "given":
    41        {"foo": [{"bar": "one"}, {"bar": "two"}, {"bar": "three"}, {"notbar": "four"}]},
    42     "cases": [
    43         {
    44            "expression": "foo.bar",
    45            "result": null
    46         },
    47         {
    48            "expression": "foo[0].bar",
    49            "result": "one"
    50         },
    51         {
    52            "expression": "foo[1].bar",
    53            "result": "two"
    54         },
    55         {
    56            "expression": "foo[2].bar",
    57            "result": "three"
    58         },
    59         {
    60            "expression": "foo[3].notbar",
    61            "result": "four"
    62         },
    63         {
    64            "expression": "foo[3].bar",
    65            "result": null
    66         },
    67         {
    68            "expression": "foo[0]",
    69            "result": {"bar": "one"}
    70         },
    71         {
    72            "expression": "foo[1]",
    73            "result": {"bar": "two"}
    74         },
    75         {
    76            "expression": "foo[2]",
    77            "result": {"bar": "three"}
    78         },
    79         {
    80            "expression": "foo[3]",
    81            "result": {"notbar": "four"}
    82         },
    83         {
    84            "expression": "foo[4]",
    85            "result": null
    86         }
    87     ]
    88},
    89{
    90    "given": [
    91        "one", "two", "three"
    92    ],
    93     "cases": [
    94         {
    95            "expression": "[0]",
    96            "result": "one"
    97         },
    98         {
    99            "expression": "[1]",
   100            "result": "two"
   101         },
   102         {
   103            "expression": "[2]",
   104            "result": "three"
   105         },
   106         {
   107            "expression": "[-1]",
   108            "result": "three"
   109         },
   110         {
   111            "expression": "[-2]",
   112            "result": "two"
   113         },
   114         {
   115            "expression": "[-3]",
   116            "result": "one"
   117         }
   118     ]
   119},
   120{
   121    "given": {"reservations": [
   122        {"instances": [{"foo": 1}, {"foo": 2}]}
   123    ]},
   124    "cases": [
   125        {
   126           "expression": "reservations[].instances[].foo",
   127           "result": [1, 2]
   128        },
   129        {
   130           "expression": "reservations[].instances[].bar",
   131           "result": []
   132        },
   133        {
   134           "expression": "reservations[].notinstances[].foo",
   135           "result": []
   136        },
   137        {
   138           "expression": "reservations[].notinstances[].foo",
   139           "result": []
   140        }
   141    ]
   142},
   143{
   144    "given": {"reservations": [{
   145        "instances": [
   146            {"foo": [{"bar": 1}, {"bar": 2}, {"notbar": 3}, {"bar": 4}]},
   147            {"foo": [{"bar": 5}, {"bar": 6}, {"notbar": [7]}, {"bar": 8}]},
   148            {"foo": "bar"},
   149            {"notfoo": [{"bar": 20}, {"bar": 21}, {"notbar": [7]}, {"bar": 22}]},
   150            {"bar": [{"baz": [1]}, {"baz": [2]}, {"baz": [3]}, {"baz": [4]}]},
   151            {"baz": [{"baz": [1, 2]}, {"baz": []}, {"baz": []}, {"baz": [3, 4]}]},
   152            {"qux": [{"baz": []}, {"baz": [1, 2, 3]}, {"baz": [4]}, {"baz": []}]}
   153        ],
   154        "otherkey": {"foo": [{"bar": 1}, {"bar": 2}, {"notbar": 3}, {"bar": 4}]}
   155      }, {
   156        "instances": [
   157            {"a": [{"bar": 1}, {"bar": 2}, {"notbar": 3}, {"bar": 4}]},
   158            {"b": [{"bar": 5}, {"bar": 6}, {"notbar": [7]}, {"bar": 8}]},
   159            {"c": "bar"},
   160            {"notfoo": [{"bar": 23}, {"bar": 24}, {"notbar": [7]}, {"bar": 25}]},
   161            {"qux": [{"baz": []}, {"baz": [1, 2, 3]}, {"baz": [4]}, {"baz": []}]}
   162        ],
   163        "otherkey": {"foo": [{"bar": 1}, {"bar": 2}, {"notbar": 3}, {"bar": 4}]}
   164      }
   165    ]},
   166    "cases": [
   167        {
   168           "expression": "reservations[].instances[].foo[].bar",
   169           "result": [1, 2, 4, 5, 6, 8]
   170        },
   171        {
   172           "expression": "reservations[].instances[].foo[].baz",
   173           "result": []
   174        },
   175        {
   176           "expression": "reservations[].instances[].notfoo[].bar",
   177           "result": [20, 21, 22, 23, 24, 25]
   178        },
   179        {
   180           "expression": "reservations[].instances[].notfoo[].notbar",
   181           "result": [[7], [7]]
   182        },
   183        {
   184           "expression": "reservations[].notinstances[].foo",
   185           "result": []
   186        },
   187        {
   188           "expression": "reservations[].instances[].foo[].notbar",
   189           "result": [3, [7]]
   190        },
   191        {
   192           "expression": "reservations[].instances[].bar[].baz",
   193           "result": [[1], [2], [3], [4]]
   194        },
   195        {
   196           "expression": "reservations[].instances[].baz[].baz",
   197           "result": [[1, 2], [], [], [3, 4]]
   198        },
   199        {
   200           "expression": "reservations[].instances[].qux[].baz",
   201           "result": [[], [1, 2, 3], [4], [], [], [1, 2, 3], [4], []]
   202        },
   203        {
   204           "expression": "reservations[].instances[].qux[].baz[]",
   205           "result": [1, 2, 3, 4, 1, 2, 3, 4]
   206        }
   207    ]
   208},
   209{
   210    "given": {
   211        "foo": [
   212            [["one", "two"], ["three", "four"]],
   213            [["five", "six"], ["seven", "eight"]],
   214            [["nine"], ["ten"]]
   215        ]
   216     },
   217    "cases": [
   218        {
   219           "expression": "foo[]",
   220           "result": [["one", "two"], ["three", "four"], ["five", "six"],
   221                      ["seven", "eight"], ["nine"], ["ten"]]
   222        },
   223        {
   224           "expression": "foo[][0]",
   225           "result": ["one", "three", "five", "seven", "nine", "ten"]
   226        },
   227        {
   228           "expression": "foo[][1]",
   229           "result": ["two", "four", "six", "eight"]
   230        },
   231        {
   232           "expression": "foo[][0][0]",
   233           "result": []
   234        },
   235         {
   236            "expression": "foo[][2][2]",
   237            "result": []
   238         },
   239         {
   240            "expression": "foo[][0][0][100]",
   241            "result": []
   242         }
   243    ]
   244},
   245{
   246    "given": {
   247      "foo": [{
   248          "bar": [
   249            {
   250              "qux": 2,
   251              "baz": 1
   252            },
   253            {
   254              "qux": 4,
   255              "baz": 3
   256            }
   257          ]
   258        },
   259        {
   260          "bar": [
   261            {
   262              "qux": 6,
   263              "baz": 5
   264            },
   265            {
   266              "qux": 8,
   267              "baz": 7
   268            }
   269          ]
   270        }
   271      ]
   272    },
   273    "cases": [
   274        {
   275           "expression": "foo",
   276           "result": [{"bar": [{"qux": 2, "baz": 1}, {"qux": 4, "baz": 3}]},
   277                      {"bar": [{"qux": 6, "baz": 5}, {"qux": 8, "baz": 7}]}]
   278        },
   279        {
   280           "expression": "foo[]",
   281           "result": [{"bar": [{"qux": 2, "baz": 1}, {"qux": 4, "baz": 3}]},
   282                      {"bar": [{"qux": 6, "baz": 5}, {"qux": 8, "baz": 7}]}]
   283        },
   284        {
   285           "expression": "foo[].bar",
   286           "result": [[{"qux": 2, "baz": 1}, {"qux": 4, "baz": 3}],
   287                      [{"qux": 6, "baz": 5}, {"qux": 8, "baz": 7}]]
   288        },
   289        {
   290           "expression": "foo[].bar[]",
   291           "result": [{"qux": 2, "baz": 1}, {"qux": 4, "baz": 3},
   292                      {"qux": 6, "baz": 5}, {"qux": 8, "baz": 7}]
   293        },
   294        {
   295           "expression": "foo[].bar[].baz",
   296           "result": [1, 3, 5, 7]
   297        }
   298    ]
   299},
   300{
   301    "given": {
   302        "string": "string",
   303        "hash": {"foo": "bar", "bar": "baz"},
   304        "number": 23,
   305        "nullvalue": null
   306     },
   307     "cases": [
   308         {
   309            "expression": "string[]",
   310            "result": null
   311         },
   312         {
   313            "expression": "hash[]",
   314            "result": null
   315         },
   316         {
   317            "expression": "number[]",
   318            "result": null
   319         },
   320         {
   321            "expression": "nullvalue[]",
   322            "result": null
   323         },
   324         {
   325            "expression": "string[].foo",
   326            "result": null
   327         },
   328         {
   329            "expression": "hash[].foo",
   330            "result": null
   331         },
   332         {
   333            "expression": "number[].foo",
   334            "result": null
   335         },
   336         {
   337            "expression": "nullvalue[].foo",
   338            "result": null
   339         },
   340         {
   341            "expression": "nullvalue[].foo[].bar",
   342            "result": null
   343         }
   344     ]
   345}
   346]

View as plain text