def test_pending_status_check(self, mocked_gql: Any, mocked_read_merge_rules: Any) -> None: """ Tests that PR with nonexistent/pending status checks fails with the right reason. """ pr = GitHubPR("pytorch", "pytorch", 76118) repo = GitRepo(get_git_repo_dir(), get_git_remote_name()) self.assertRaisesRegex(MandatoryChecksMissingError, ".*are pending/not yet run.*", lambda: find_matching_merge_rule(pr, repo))
def test_lint_fails(self, mocked_gql: Any) -> None: "Tests that PR fails mandatory lint check" pr = GitHubPR("pytorch", "pytorch", 74649) repo = GitRepo(get_git_repo_dir(), get_git_remote_name()) self.assertRaises(RuntimeError, lambda: find_matching_merge_rule(pr, repo))
def test_match_rules(self, mocked_gql: Any) -> None: "Tests that PR passes merge rules" pr = GitHubPR("pytorch", "pytorch", 77700) repo = GitRepo(get_git_repo_dir(), get_git_remote_name()) self.assertTrue(find_matching_merge_rule(pr, repo) is not None)
def test_lint_fails(self, mocked_gql: Any, mocked_rmr: Any) -> None: "Tests that PR fails mandatory lint check" pr = GitHubPR("pytorch", "pytorch", 74649) repo = DummyGitRepo() self.assertRaises(RuntimeError, lambda: find_matching_merge_rule(pr, repo))
def test_match_rules(self, mocked_gql: Any, mocked_rmr: Any) -> None: "Tests that PR passes merge rules" pr = GitHubPR("pytorch", "pytorch", 77700) repo = DummyGitRepo() self.assertTrue(find_matching_merge_rule(pr, repo) is not None)