mirror of
https://github.com/Skyvern-AI/skyvern.git
synced 2026-04-28 03:30:10 +00:00
fix url encoding in the param part (#2520)
This commit is contained in:
parent
401729fb12
commit
62e9d84fd6
3 changed files with 30 additions and 0 deletions
|
|
@ -65,4 +65,5 @@ def encode_url(url: str) -> str:
|
|||
parts = list(urlsplit(url))
|
||||
# Encode the path while preserving "/" and "%"
|
||||
parts[2] = quote(parts[2], safe="/%")
|
||||
parts[3] = quote(parts[3], safe="=&/%")
|
||||
return urlunsplit(parts)
|
||||
|
|
|
|||
0
tests/unit_tests/__init__.py
Normal file
0
tests/unit_tests/__init__.py
Normal file
29
tests/unit_tests/test_url_validators.py
Normal file
29
tests/unit_tests/test_url_validators.py
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
from skyvern.utils.url_validators import encode_url
|
||||
|
||||
|
||||
def test_encode_url_basic():
|
||||
"""Test basic URL encoding with simple path"""
|
||||
url = "https://example.com/path with spaces"
|
||||
expected = "https://example.com/path%20with%20spaces"
|
||||
assert encode_url(url) == expected
|
||||
|
||||
|
||||
def test_encode_url_with_query_params():
|
||||
"""Test URL encoding with query parameters"""
|
||||
url = "https://example.com/search?q=hello world&type=test"
|
||||
expected = "https://example.com/search?q=hello%20world&type=test"
|
||||
assert encode_url(url) == expected
|
||||
|
||||
|
||||
def test_encode_url_with_special_chars():
|
||||
"""Test URL encoding with special characters"""
|
||||
url = "https://example.com/path/with/special#chars?param=value&other=test@123"
|
||||
expected = "https://example.com/path/with/special#chars?param=value&other=test@123"
|
||||
assert encode_url(url) == expected
|
||||
|
||||
|
||||
def test_encode_url_with_pre_encoded_chars():
|
||||
"""Test URL encoding with pre-encoded characters in query parameters"""
|
||||
url = "https://example.com/search?q=hello world&type=test%20test"
|
||||
expected = "https://example.com/search?q=hello%20world&type=test%20test"
|
||||
assert encode_url(url) == expected
|
||||
Loading…
Add table
Add a link
Reference in a new issue