Skip to content

Commit 70b8c84

Browse files
committed
Improve error message when key is not found in gradle.properties (fix #3)
1 parent 2f57a09 commit 70b8c84

File tree

3 files changed

+32
-1
lines changed

3 files changed

+32
-1
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
44

55
[project]
66
name = "hatch-gradle-version"
7-
version = "0.9.10"
7+
version = "0.9.11"
88
authors = [
99
{ name="object-Object", email="object@objectobject.ca" },
1010
]

src/hatch_gradle_version/common/gradle.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@ def from_properties(
4343
key: str,
4444
fmt: Callable[[str, dict[str, str]], str] | None,
4545
):
46+
if key not in p:
47+
raise KeyError(f"Key not found in gradle.properties: {key}")
4648
return cls.from_raw(
4749
raw_version=str(p[key].data),
4850
extra_versions={key: value.data for key, value in p.items()},
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# pyright: reportMissingTypeStubs=none
2+
3+
import jproperties
4+
import pytest
5+
6+
from hatch_gradle_version.common.gradle import GradleVersion
7+
8+
9+
def test_from_properties_valid():
10+
p = jproperties.Properties()
11+
p["key"] = "0.11.1-7"
12+
13+
gradle_version = GradleVersion.from_properties(p, "key", None)
14+
15+
assert gradle_version == GradleVersion(
16+
raw_version="0.11.1-7",
17+
version="0.11.1",
18+
rc=7,
19+
build=None,
20+
extra_versions={"key": "0.11.1-7"},
21+
)
22+
23+
24+
def test_from_properties_missing_key():
25+
p = jproperties.Properties()
26+
p["key"] = "0.11.1-7"
27+
28+
with pytest.raises(KeyError, match="MISSING_KEY"):
29+
GradleVersion.from_properties(p, "MISSING_KEY", None)

0 commit comments

Comments
 (0)