@@ -110,6 +110,24 @@ def test_fields_value(self):
110
110
jsonpath .auto_id_field = 'id'
111
111
self .check_cases ([ ('*' , {'foo' : 1 , 'baz' : 2 }, set ([1 , 2 , '`this`' ])) ])
112
112
113
+ def test_sort_value (self ):
114
+ jsonpath .auto_id_field = None
115
+ self .check_cases ([
116
+ ('objects[/cow]' , {'objects' : [{'cat' : 1 , 'cow' : 2 }, {'cat' : 2 , 'cow' : 1 }, {'cat' : 3 , 'cow' : 3 }]},
117
+ [{'cat' : 2 , 'cow' : 1 }, {'cat' : 1 , 'cow' : 2 }, {'cat' : 3 , 'cow' : 3 }]),
118
+ ('objects[\cat]' , {'objects' : [{'cat' : 2 }, {'cat' : 1 }, {'cat' : 3 }]},
119
+ [{'cat' : 3 }, {'cat' : 2 }, {'cat' : 1 }]),
120
+ ('objects[/cow,\cat]' , {'objects' : [{'cat' : 1 , 'cow' : 2 }, {'cat' : 2 , 'cow' : 1 }, {'cat' : 3 , 'cow' : 1 }, {'cat' : 3 , 'cow' : 3 }]},
121
+ [{'cat' : 3 , 'cow' : 1 }, {'cat' : 2 , 'cow' : 1 }, {'cat' : 1 , 'cow' : 2 }, {'cat' : 3 , 'cow' : 3 }]),
122
+ ('objects[\cow , /cat]' , {'objects' : [{'cat' : 1 , 'cow' : 2 }, {'cat' : 2 , 'cow' : 1 }, {'cat' : 3 , 'cow' : 1 }, {'cat' : 3 , 'cow' : 3 }]},
123
+ [{'cat' : 3 , 'cow' : 3 }, {'cat' : 1 , 'cow' : 2 }, {'cat' : 2 , 'cow' : 1 }, {'cat' : 3 , 'cow' : 1 }]),
124
+ ('objects[/cat.cow]' , {'objects' : [{'cat' : {'dog' : 1 , 'cow' : 2 }}, {'cat' : {'dog' : 2 , 'cow' : 1 }}, {'cat' : {'dog' : 3 , 'cow' : 3 }}]},
125
+ [{'cat' : {'dog' : 2 , 'cow' : 1 }}, {'cat' : {'dog' : 1 , 'cow' : 2 }}, {'cat' : {'dog' : 3 , 'cow' : 3 }}]),
126
+ ('objects[/cat.(cow,bow)]' , {'objects' : [{'cat' : {'dog' : 1 , 'bow' : 3 }}, {'cat' : {'dog' : 2 , 'cow' : 1 }}, {'cat' : {'dog' : 2 , 'bow' : 2 }}, {'cat' : {'dog' : 3 , 'cow' : 2 }}]},
127
+ [{'cat' : {'dog' : 2 , 'cow' : 1 }}, {'cat' : {'dog' : 2 , 'bow' : 2 }}, {'cat' : {'dog' : 3 , 'cow' : 2 }}, {'cat' : {'dog' : 1 , 'bow' : 3 }}]),
128
+ ])
129
+
130
+
113
131
def test_root_value (self ):
114
132
jsonpath .auto_id_field = None
115
133
self .check_cases ([
0 commit comments