Compare commits
3 Commits
454a59b59b
...
ef55b5b947
Author | SHA1 | Date | |
---|---|---|---|
ef55b5b947 | |||
9f1e0b8ae9 | |||
d0faa61fa4 |
24
flake.lock
generated
24
flake.lock
generated
@ -2,11 +2,11 @@
|
|||||||
"nodes": {
|
"nodes": {
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737632463,
|
"lastModified": 1748190013,
|
||||||
"narHash": "sha256-38J9QfeGSej341ouwzqf77WIHAScihAKCt8PQJ+NH28=",
|
"narHash": "sha256-R5HJFflOfsP5FBtk+zE8FpL8uqE7n62jqOsADvVshhE=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "0aa475546ed21629c4f5bbf90e38c846a99ec9e9",
|
"rev": "62b852f6c6742134ade1abdd2a21685fd617a291",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -29,11 +29,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737338290,
|
"lastModified": 1744599653,
|
||||||
"narHash": "sha256-gnXlfFEHA+/jMH7R+7y3JxrI3WfOjgBhzzJNuFW70UU=",
|
"narHash": "sha256-nysSwVVjG4hKoOjhjvE6U5lIKA8sEr1d1QzEfZsannU=",
|
||||||
"owner": "pyproject-nix",
|
"owner": "pyproject-nix",
|
||||||
"repo": "build-system-pkgs",
|
"repo": "build-system-pkgs",
|
||||||
"rev": "e1487e5cefda0c7990bdd2e660bee20971680e45",
|
"rev": "7dba6dbc73120e15b558754c26024f6c93015dd7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -49,11 +49,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737718664,
|
"lastModified": 1746540146,
|
||||||
"narHash": "sha256-L/X8LdLW0jCAWrLukC63qdg8519IwMc6vkx+WZDj7r0=",
|
"narHash": "sha256-QxdHGNpbicIrw5t6U3x+ZxeY/7IEJ6lYbvsjXmcxFIM=",
|
||||||
"owner": "pyproject-nix",
|
"owner": "pyproject-nix",
|
||||||
"repo": "pyproject.nix",
|
"repo": "pyproject.nix",
|
||||||
"rev": "177aaaa370363e205e0d7b7cc7b3ea3e144aa065",
|
"rev": "e09c10c24ebb955125fda449939bfba664c467fd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -80,11 +80,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737716196,
|
"lastModified": 1747949765,
|
||||||
"narHash": "sha256-dC7J0Rua2UhP+EKlJY3jjQLzgzBnOo1iK/d2aIN0hAs=",
|
"narHash": "sha256-1v8SFHOwUCvHDXFmQRjHZYawY19nxmtZ7zH/kwAGgj0=",
|
||||||
"owner": "pyproject-nix",
|
"owner": "pyproject-nix",
|
||||||
"repo": "uv2nix",
|
"repo": "uv2nix",
|
||||||
"rev": "e47ec890012166425d1f90fb825eff208baaef4b",
|
"rev": "ec0502250b48116fd3aa8e1347a2d0254bacd05e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -9,9 +9,9 @@ from nixprstatus.output import OutputFormat
|
|||||||
DEFAULT_HEADERS = {
|
DEFAULT_HEADERS = {
|
||||||
"Accept": "application/vnd.github.text+json",
|
"Accept": "application/vnd.github.text+json",
|
||||||
}
|
}
|
||||||
DEFAULT_BRANCHES = ["master", "nixos-unstable-small", "nixos-unstable", "nixos-24.11"]
|
DEFAULT_BRANCHES = ["master", "nixos-unstable-small", "nixos-unstable", "nixos-25.05"]
|
||||||
STABLE_BRANCH = "nixos-24.11"
|
STABLE_BRANCH = "nixos-25.05"
|
||||||
BACKPORT_LABEL = "backport release-24.11"
|
BACKPORT_LABEL = "backport release-25.05"
|
||||||
|
|
||||||
|
|
||||||
class PRStatus(BaseModel):
|
class PRStatus(BaseModel):
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "nixprstatus"
|
name = "nixprstatus"
|
||||||
version = "0.1.17"
|
version = "0.1.18"
|
||||||
description = "Nixpkgs PR status checker"
|
description = "Nixpkgs PR status checker"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
requires-python = ">=3.12"
|
requires-python = ">=3.12"
|
||||||
|
@ -30,14 +30,42 @@ class TestCli(unittest.TestCase):
|
|||||||
|
|
||||||
@unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
|
@unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
|
||||||
def test_pr_single_simple(self, mock_get):
|
def test_pr_single_simple(self, mock_get):
|
||||||
result = runner.invoke(app, ["pr", "345583"])
|
result = runner.invoke(
|
||||||
|
app,
|
||||||
|
[
|
||||||
|
"pr",
|
||||||
|
"--format",
|
||||||
|
"json",
|
||||||
|
"--branches",
|
||||||
|
"nixos-unstable-small",
|
||||||
|
"--branches",
|
||||||
|
"nixos-unstable",
|
||||||
|
"--branches",
|
||||||
|
"nixos-24.11",
|
||||||
|
"345583",
|
||||||
|
],
|
||||||
|
)
|
||||||
print(result.exception)
|
print(result.exception)
|
||||||
self.assertEqual(result.exit_code, 0)
|
self.assertEqual(result.exit_code, 0)
|
||||||
self.assertIn("wireshark: 4.2.6 -> 4.2.7", result.output)
|
self.assertIn("wireshark: 4.2.6 -> 4.2.7", result.output)
|
||||||
|
|
||||||
@unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
|
@unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
|
||||||
def test_pr_single_json(self, mock_get):
|
def test_pr_single_json(self, mock_get):
|
||||||
result = runner.invoke(app, ["pr", "--format", "json", "345583"])
|
result = runner.invoke(
|
||||||
|
app,
|
||||||
|
[
|
||||||
|
"pr",
|
||||||
|
"--format",
|
||||||
|
"json",
|
||||||
|
"--branches",
|
||||||
|
"nixos-unstable-small",
|
||||||
|
"--branches",
|
||||||
|
"nixos-unstable",
|
||||||
|
"--branches",
|
||||||
|
"nixos-24.11",
|
||||||
|
"345583",
|
||||||
|
],
|
||||||
|
)
|
||||||
self.assertEqual(result.exit_code, 0)
|
self.assertEqual(result.exit_code, 0)
|
||||||
expected = {
|
expected = {
|
||||||
"title": "wireshark: 4.2.6 -> 4.2.7",
|
"title": "wireshark: 4.2.6 -> 4.2.7",
|
||||||
@ -50,34 +78,3 @@ class TestCli(unittest.TestCase):
|
|||||||
}
|
}
|
||||||
output = json.loads(result.output)
|
output = json.loads(result.output)
|
||||||
self.assertEqual(output, expected)
|
self.assertEqual(output, expected)
|
||||||
|
|
||||||
@unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
|
|
||||||
def test_pr_multiple(self, mock_get):
|
|
||||||
result = runner.invoke(app, ["pr", "--format", "json", "345583", "345769"])
|
|
||||||
self.assertEqual(result.exit_code, 0)
|
|
||||||
expected = [
|
|
||||||
{
|
|
||||||
"title": "wireshark: 4.2.6 -> 4.2.7",
|
|
||||||
"merged": True,
|
|
||||||
"branches": {
|
|
||||||
"master": True,
|
|
||||||
"nixos-unstable-small": True,
|
|
||||||
"nixos-unstable": True,
|
|
||||||
"nixos-24.11": False,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"title": "Firefox: 130.0.1 -> 131.0; 128.2.0esr -> 128.3.0esr; 115.15.0esr -> 115.16.0esr",
|
|
||||||
"merged": True,
|
|
||||||
"branches": {
|
|
||||||
"nixos-unstable-small": False,
|
|
||||||
"nixos-unstable": False,
|
|
||||||
"nixos-24.11 (#346022)": True,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
]
|
|
||||||
output = []
|
|
||||||
for line in result.output.split("\n"):
|
|
||||||
if len(line) > 0:
|
|
||||||
output.append(json.loads(line))
|
|
||||||
self.assertEqual(output, expected)
|
|
||||||
|
@ -17,15 +17,6 @@ class TestPRMergeStatus(unittest.TestCase):
|
|||||||
self.assertTrue(res.branches["nixos-unstable"])
|
self.assertTrue(res.branches["nixos-unstable"])
|
||||||
self.assertFalse(res.branches["nixos-24.05"])
|
self.assertFalse(res.branches["nixos-24.05"])
|
||||||
|
|
||||||
@unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
|
|
||||||
def test_pr_merge_status_backport_345769(self, mock_get):
|
|
||||||
pr = 345769
|
|
||||||
branches = ["nixos-24.11"]
|
|
||||||
|
|
||||||
res = pr_merge_status(pr, branches, check_backport=True)
|
|
||||||
self.assertTrue(res.merged)
|
|
||||||
self.assertTrue(res.branches["nixos-24.11 (#346022)"])
|
|
||||||
|
|
||||||
@unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
|
@unittest.mock.patch("requests.get", side_effect=mocked_requests_get)
|
||||||
def test_pr_merge_status_title_345769(self, mock_get):
|
def test_pr_merge_status_title_345769(self, mock_get):
|
||||||
pr = 345769
|
pr = 345769
|
||||||
|
Loading…
x
Reference in New Issue
Block a user