Skip to content

Commit d563792

Browse files
committed
Update tests
Signed-off-by: Tushar Goel <tushar.goel.dav@gmail.com>
1 parent 47dd757 commit d563792

2 files changed

Lines changed: 16 additions & 19 deletions

File tree

src/packageurl/__init__.py

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -79,13 +79,11 @@ def unquote(s: AnyStr) -> str:
7979

8080

8181
@overload
82-
def get_quoter(encode: bool = True) -> Callable[[AnyStr], str]:
83-
...
82+
def get_quoter(encode: bool = True) -> Callable[[AnyStr], str]: ...
8483

8584

8685
@overload
87-
def get_quoter(encode: None) -> Callable[[str], str]:
88-
...
86+
def get_quoter(encode: None) -> Callable[[str], str]: ...
8987

9088

9189
def get_quoter(encode: bool | None = True) -> Callable[[AnyStr], str] | Callable[[str], str]:
@@ -135,7 +133,7 @@ def normalize_name(
135133
quoter = get_quoter(encode)
136134
name_str = quoter(name_str)
137135
name_str = name_str.strip().strip("/")
138-
if ptype in ("bitbucket", "github", "pypi", "gitlab"):
136+
if ptype in ("bitbucket", "github", "pypi", "gitlab", "huggingface"):
139137
name_str = name_str.lower()
140138
if ptype == "pypi":
141139
name_str = name_str.replace("_", "-")
@@ -155,22 +153,19 @@ def normalize_version(version: AnyStr | None, encode: bool | None = True) -> str
155153
@overload
156154
def normalize_qualifiers(
157155
qualifiers: AnyStr | dict[str, str] | None, encode: Literal[True] = ...
158-
) -> str | None:
159-
...
156+
) -> str | None: ...
160157

161158

162159
@overload
163160
def normalize_qualifiers(
164161
qualifiers: AnyStr | dict[str, str] | None, encode: Literal[False] | None
165-
) -> dict[str, str]:
166-
...
162+
) -> dict[str, str]: ...
167163

168164

169165
@overload
170166
def normalize_qualifiers(
171167
qualifiers: AnyStr | dict[str, str] | None, encode: bool | None = ...
172-
) -> str | dict[str, str] | None:
173-
...
168+
) -> str | dict[str, str] | None: ...
174169

175170

176171
def normalize_qualifiers(
@@ -261,8 +256,7 @@ def normalize(
261256
qualifiers: AnyStr | dict[str, str] | None,
262257
subpath: AnyStr | None,
263258
encode: Literal[True] = ...,
264-
) -> tuple[str, str | None, str, str | None, str | None, str | None]:
265-
...
259+
) -> tuple[str, str | None, str, str | None, str | None, str | None]: ...
266260

267261

268262
@overload
@@ -274,8 +268,7 @@ def normalize(
274268
qualifiers: AnyStr | dict[str, str] | None,
275269
subpath: AnyStr | None,
276270
encode: Literal[False] | None,
277-
) -> tuple[str, str | None, str, str | None, dict[str, str], str | None]:
278-
...
271+
) -> tuple[str, str | None, str, str | None, dict[str, str], str | None]: ...
279272

280273

281274
@overload
@@ -287,8 +280,7 @@ def normalize(
287280
qualifiers: AnyStr | dict[str, str] | None,
288281
subpath: AnyStr | None,
289282
encode: bool | None = ...,
290-
) -> tuple[str, str | None, str, str | None, str | dict[str, str] | None, str | None]:
291-
...
283+
) -> tuple[str, str | None, str, str | None, str | dict[str, str] | None, str | None]: ...
292284

293285

294286
def normalize(

tests/test_purl_spec.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,11 @@ def load_spec_files(spec_dir):
116116
for case in cases:
117117
flattened_cases.append((filename, case["description"], case))
118118

119+
def test_cran():
120+
p = PackageURL(** {'name': 'URI::PackageURL', 'type':
121+
'cran', 'namespace': None, 'qualifiers': None, 'subpath': None})
122+
p.to_string()
123+
119124

120125
@pytest.mark.parametrize("filename,description,test_case", flattened_cases)
121126
def test_package_type_case(filename, description, test_case):
@@ -142,7 +147,7 @@ def run_test_case(case, test_type, desc):
142147

143148
elif test_type == "roundtrip":
144149
purl = PackageURL.from_string(case["input"])
145-
assert purl.to_string() == case["expected_output"]
150+
assert purl == PackageURL.from_string(case["expected_output"])
146151

147152
elif test_type == "build":
148153
input_data = case["input"]
@@ -154,4 +159,4 @@ def run_test_case(case, test_type, desc):
154159
qualifiers=input_data.get("qualifiers"),
155160
subpath=input_data.get("subpath"),
156161
)
157-
assert purl.to_string() == case["expected_output"]
162+
assert purl == PackageURL.from_string(case["expected_output"])

0 commit comments

Comments
 (0)