kopia lustrzana https://github.com/simonw/datasette
Revert "New encode/decode_path_component functions"
Refs #272
This reverts commit 9fdb47ca95
.
Now that ASGI supports raw_path we don't need our own encoding scheme!
pull/524/head
rodzic
d4df640d18
commit
35429f9089
|
@ -261,27 +261,6 @@ def escape_sqlite(s):
|
|||
return "[{}]".format(s)
|
||||
|
||||
|
||||
_decode_path_component_re = re.compile(r"U\+([\da-h]{4})", re.IGNORECASE)
|
||||
_encode_path_component_re = re.compile(
|
||||
"[{}]".format(
|
||||
"".join(
|
||||
re.escape(c)
|
||||
for c in (";", "/", "?", ":", "@", "&", "=", "+", "$", ",", "~")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
def decode_path_component(table_name):
|
||||
return _decode_path_component_re.sub(lambda m: chr(int(m.group(1), 16)), table_name)
|
||||
|
||||
|
||||
def encode_path_component(table_name):
|
||||
return _encode_path_component_re.sub(
|
||||
lambda m: "U+{0:0{1}x}".format(ord(m.group(0)), 4).upper(), table_name
|
||||
)
|
||||
|
||||
|
||||
def make_dockerfile(
|
||||
files,
|
||||
metadata_file,
|
||||
|
|
|
@ -381,19 +381,3 @@ def test_path_with_format(path, format, extra_qs, expected):
|
|||
)
|
||||
def test_format_bytes(bytes, expected):
|
||||
assert expected == utils.format_bytes(bytes)
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"name,expected",
|
||||
[
|
||||
("table", "table"),
|
||||
("table/and/slashes", "tableU+002FandU+002Fslashes"),
|
||||
("~table", "U+007Etable"),
|
||||
("+bobcats!", "U+002Bbobcats!"),
|
||||
("U+007Etable", "UU+002B007Etable"),
|
||||
],
|
||||
)
|
||||
def test_encode_decode_path_component(name, expected):
|
||||
encoded = utils.encode_path_component(name)
|
||||
assert encoded == expected
|
||||
assert name == utils.decode_path_component(encoded)
|
||||
|
|
Ładowanie…
Reference in New Issue