def test_get_query_sort_multi_order(self):
        def query_args_func(key):
            args = {"sort": ["a", "b", "c"], "sort_order": [1, -1, 1]}
            return args.get(key, [])

        expected = [("a", 1), ("b", 1), ("c", 1)]

        self.assertEqual(expected, get_query_sort(query_args_func))
    def test_get_query_sort_wrong_single_order(self):
        def query_args_func(key):
            args = {"sort": ["foo"], "sort_order": -10}
            return args.get(key, [])

        expected = [("foo", -1)]

        self.assertEqual(expected, get_query_sort(query_args_func))
    def test_get_query_sort_not_sort(self):
        def query_args_func(key):
            args = {
                "sort_order": [1]
            }
            return args.get(key, [])

        self.assertIsNone(get_query_sort(query_args_func))
    def test_get_query_sort_empty(self):
        def query_args_func(key):
            return []

        self.assertIsNone(get_query_sort(query_args_func))