コード例 #1
0
    def test_uses_cache(self, query, lektor_pad, query_expr):
        record = lektor_pad.root
        id_ = serialize_query(query)
        query_results = resolve_virtual_path(record, [id_])
        assert query_results._id == id_
        # NB: the following is not always true (only noticed in py35, depending
        # on PYTHONHASHSEED)
        #
        # assert serialize_query(query_results.query) == id_
        assert resolve_virtual_path(record, [id_]) is query_results

        # try with new pad
        other_pad = lektor_pad.env.new_pad()
        other_query_results = resolve_virtual_path(other_pad.root, [id_])
        assert other_query_results is not query_results
        assert_queries_equal(query, other_query_results.query)
コード例 #2
0
 def test_deserialize_query(self, query, query_expr, lektor_env):
     new_pad = lektor_env.new_pad()
     query_clone = deserialize_query(new_pad, serialize_query(query))
     assert [record.path for record in query_clone] \
         == [record.path for record in query]
コード例 #3
0
def test_serialize_query_is_deterministic(query, query_expr, lektor_env):
    serialized = serialize_query(query)
    for n in range(10):
        new_pad = lektor_env.new_pad()
        q2 = deserialize_query(new_pad, serialized)
        assert serialize_query(q2) == serialized
コード例 #4
0
def test_serialize_query(query, query_expr, lektor_env):
    serialized = serialize_query(query)
    assert isinstance(serialized, str)
    assert len(serialized) < 1024
    print("query {!r} => serialized to length {:d}"
          .format(query_expr, len(serialized)))
コード例 #5
0
 def test_extra_pieces(self, query, lektor_pad):
     record = lektor_pad.root
     id_ = serialize_query(query)
     assert resolve_virtual_path(record, [id_, 'extra']) is None
コード例 #6
0
 def test_only_resolves_on_root(self, query, lektor_pad):
     record = lektor_pad.get('/about')
     id_ = serialize_query(query)
     assert resolve_virtual_path(record, [id_]) is None
コード例 #7
0
 def test_resolves(self, query, lektor_pad):
     record = lektor_pad.root
     id_ = serialize_query(query)
     query_results = resolve_virtual_path(record, [id_])
     assert_queries_equal(query, query_results.query)