File tree Expand file tree Collapse file tree 3 files changed +25
-5
lines changed
django_sorting_field_tests Expand file tree Collapse file tree 3 files changed +25
-5
lines changed Original file line number Diff line number Diff line change 66def clean_order_json (value ):
77 value = "[]" if value is None else value
88
9+ if not isinstance (value , six .string_types ):
10+ return value
11+
912 try :
1013 return json .loads (value )
1114 except ValueError :
1215 return []
1316
1417
1518def iterate_in_order (items , order ):
16- # In case our order is still in json format
17- if isinstance (order , six .string_types ):
18- order = clean_order_json (order )
19-
19+ order = clean_order_json (order )
2020 items_by_id = {item .id : item for item in items }
2121
2222 # Return items that are ordered first
@@ -26,7 +26,7 @@ def iterate_in_order(items, order):
2626 yield items_by_id .pop (entry )
2727
2828 # Return the rest
29- for identifier , item in items_by_id .iteritems ():
29+ for identifier , item in items_by_id .items ():
3030 yield item
3131
3232
Original file line number Diff line number Diff line change 1+ from django_sorting_field .utils import sort_by_order
2+
3+
4+ class DummyItem (object ):
5+
6+ def __init__ (self , item_id ):
7+ self .id = item_id
8+
9+
10+ def test_sort_by_order_none ():
11+ items = [
12+ DummyItem (0 ),
13+ DummyItem (1 ),
14+ DummyItem (2 ),
15+ ]
16+ sorted_items = sort_by_order (items , None )
17+ assert sorted_items [0 ].id == 0
18+ assert sorted_items [1 ].id == 1
19+ assert sorted_items [2 ].id == 2
Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ include_package_data = True
1212packages = find:
1313install_requires =
1414 django
15+ six
1516
1617[bdist_wheel]
1718universal = 1
You can’t perform that action at this time.
0 commit comments