File: test_import_test_stats.py

package info (click to toggle)
pytorch 1.13.1%2Bdfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 139,252 kB
  • sloc: cpp: 1,100,274; python: 706,454; ansic: 83,052; asm: 7,618; java: 3,273; sh: 2,841; javascript: 612; makefile: 323; xml: 269; ruby: 185; yacc: 144; objc: 68; lex: 44
file content (68 lines) | stat: -rw-r--r-- 2,614 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import os
import unittest
from typing import List
from unittest.mock import patch

from tools.stats.import_test_stats import get_disabled_issues


class TestGetDisabledIssues(unittest.TestCase):
    def run_assert_disabled_issues(
        self, pr_body: str, commit_messages: str, expected: List[str]
    ) -> None:
        with patch.dict(
            os.environ, {"PR_BODY": pr_body, "COMMIT_MESSAGES": commit_messages}
        ):
            disabled_issues = get_disabled_issues()
        self.assertEqual(disabled_issues, expected)

    # test variations of close in PR_BODY
    def test_closes_pr_body(self) -> None:
        pr_body = "closes #123 Close #143 ClOsE #345 closed #10283"
        self.run_assert_disabled_issues(pr_body, "", ["123", "143", "345", "10283"])

    # test variations of fix in COMMIT_MESSAGES
    def test_fixes_commit_messages(self) -> None:
        commit_messages = "fix #123 FixEd #143 fixes #345 FiXeD #10283"
        self.run_assert_disabled_issues(
            "", commit_messages, ["123", "143", "345", "10283"]
        )

    # test variations of resolve in PR_BODY and COMMIT_MESSAGES
    def test_resolves_pr_commits(self) -> None:
        pr_body = "resolve #123 resolveS #143"
        commit_messages = "REsolved #345 RESOLVES #10283"
        self.run_assert_disabled_issues(
            pr_body, commit_messages, ["123", "143", "345", "10283"]
        )

    # test links
    def test_issue_links(self) -> None:
        pr_body = "closes https://github.com/pytorch/pytorch/issues/75198 fixes https://github.com/pytorch/pytorch/issues/75123"
        self.run_assert_disabled_issues(pr_body, "", ["75198", "75123"])

    # test strange spacing
    def test_spacing(self) -> None:
        pr_body = "resolve #123,resolveS #143Resolved #345\nRESOLVES #10283"
        commit_messages = "Fixed #2348fixes https://github.com/pytorch/pytorch/issues/75123resolveS #2134"
        self.run_assert_disabled_issues(
            pr_body,
            commit_messages,
            ["123", "143", "345", "10283", "2348", "75123", "2134"],
        )

    # test bad things
    def test_not_accepted(self) -> None:
        pr_body = (
            "fixes189 fixeshttps://github.com/pytorch/pytorch/issues/75123 "
            "closedhttps://githubcom/pytorch/pytorch/issues/75123"
        )
        commit_messages = (
            "fix 234, fixes # 45, fixing #123, close 234, closes#45, closing #123 resolve 234, "
            "resolves  #45, resolving #123"
        )
        self.run_assert_disabled_issues(pr_body, commit_messages, [])


if __name__ == "__main__":
    unittest.main()