RepoAuditor 0.2.53__tar.gz → 0.2.55__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. {repoauditor-0.2.53 → repoauditor-0.2.55}/PKG-INFO +1 -1
  2. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/CommunityStandardsQuery.py +21 -2
  3. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/CodeOfConduct.py +3 -0
  4. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/__init__.py +1 -1
  5. repoauditor-0.2.55/tests/Plugins/GitHubCommunityStandards/CommunityStandardsQuery_UnitTest.py +125 -0
  6. repoauditor-0.2.53/tests/Plugins/GitHubCommunityStandards/CommunityStandardsQuery_UnitTest.py +0 -63
  7. {repoauditor-0.2.53 → repoauditor-0.2.55}/.copier-answers.yml +0 -0
  8. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/CODEOWNERS +0 -0
  9. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  10. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  11. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/ISSUE_TEMPLATE/custom.md +0 -0
  12. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  13. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/actions/release_impl/action.yml +0 -0
  14. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/pull_request_template.md +0 -0
  15. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/release_sources.yaml +0 -0
  16. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/workflows/CICD.yml +0 -0
  17. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/workflows/CICD_impl.yml +0 -0
  18. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/workflows/EndToEnd.yml +0 -0
  19. {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/workflows/codeql.yml +0 -0
  20. {repoauditor-0.2.53 → repoauditor-0.2.55}/.gitignore +0 -0
  21. {repoauditor-0.2.53 → repoauditor-0.2.55}/.pre-commit-config.yaml +0 -0
  22. {repoauditor-0.2.53 → repoauditor-0.2.55}/.python-version +0 -0
  23. {repoauditor-0.2.53 → repoauditor-0.2.55}/CODE_OF_CONDUCT.md +0 -0
  24. {repoauditor-0.2.53 → repoauditor-0.2.55}/CONTRIBUTING.md +0 -0
  25. {repoauditor-0.2.53 → repoauditor-0.2.55}/DEVELOPMENT.md +0 -0
  26. {repoauditor-0.2.53 → repoauditor-0.2.55}/GOVERNANCE.md +0 -0
  27. {repoauditor-0.2.53 → repoauditor-0.2.55}/LICENSE +0 -0
  28. {repoauditor-0.2.53 → repoauditor-0.2.55}/MAINTAINERS.md +0 -0
  29. {repoauditor-0.2.53 → repoauditor-0.2.55}/README.md +0 -0
  30. {repoauditor-0.2.53 → repoauditor-0.2.55}/SECURITY.md +0 -0
  31. {repoauditor-0.2.53 → repoauditor-0.2.55}/default_config.yaml +0 -0
  32. {repoauditor-0.2.53 → repoauditor-0.2.55}/minisign_key.pub +0 -0
  33. {repoauditor-0.2.53 → repoauditor-0.2.55}/pyproject.toml +0 -0
  34. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/AutoGitSemVer.yaml +0 -0
  35. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/CommandLineProcessor.py +0 -0
  36. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Display.py +0 -0
  37. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/EntryPoint.py +0 -0
  38. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/ExecuteModules.py +0 -0
  39. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Impl/ParallelSequentialProcessor.py +0 -0
  40. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Impl/__init__.py +0 -0
  41. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Module.py +0 -0
  42. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugin.py +0 -0
  43. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionQuery.py +0 -0
  44. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/AllowDeletions.py +0 -0
  45. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/AllowMainlineForcePushes.py +0 -0
  46. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/DismissStalePullRequestApprovals.py +0 -0
  47. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/DoNotAllowBypassSettings.py +0 -0
  48. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/EnsureStatusChecks.py +0 -0
  49. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/ClassicEnableRequirementImpl.py +0 -0
  50. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/ClassicValueRequirementImpl.py +0 -0
  51. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/__init__.py +0 -0
  52. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireApprovalMostRecentPush.py +0 -0
  53. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireApprovals.py +0 -0
  54. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireCodeOwnerReview.py +0 -0
  55. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireConversationResolution.py +0 -0
  56. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireLinearHistory.py +0 -0
  57. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequirePullRequests.py +0 -0
  58. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireSignedCommits.py +0 -0
  59. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireStatusChecksToPass.py +0 -0
  60. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireUpToDateBranches.py +0 -0
  61. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/__init__.py +0 -0
  62. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQuery.py +0 -0
  63. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQueryRequirements/Protected.py +0 -0
  64. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQueryRequirements/__init__.py +0 -0
  65. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/Common.py +0 -0
  66. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/EnableRequirementImpl.py +0 -0
  67. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/EnableRulesetRequirementImpl.py +0 -0
  68. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/ValueRequirementImpl.py +0 -0
  69. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/__init__.py +0 -0
  70. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Module.py +0 -0
  71. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetQuery.py +0 -0
  72. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetRequirements/RequirePullRequests.py +0 -0
  73. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetRequirements/RequireSignedCommits.py +0 -0
  74. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetRequirements/RequireStatusChecks.py +0 -0
  75. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetRequirements/__init__.py +0 -0
  76. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQuery.py +0 -0
  77. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/AutoMerge.py +0 -0
  78. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DefaultBranch.py +0 -0
  79. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DeleteHeadBranches.py +0 -0
  80. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DependabotSecurityUpdates.py +0 -0
  81. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Description.py +0 -0
  82. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/StandardEnableRequirementImpl.py +0 -0
  83. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/StandardValueRequirementImpl.py +0 -0
  84. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/__init__.py +0 -0
  85. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/License.py +0 -0
  86. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/MergeCommit.py +0 -0
  87. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/MergeCommitMessage.py +0 -0
  88. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Private.py +0 -0
  89. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/RebaseMergeCommit.py +0 -0
  90. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SecretScanning.py +0 -0
  91. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SecretScanningPushProtection.py +0 -0
  92. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SquashCommitMerge.py +0 -0
  93. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SquashMergeCommitMessage.py +0 -0
  94. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SuggestUpdatingPullRequestBranches.py +0 -0
  95. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportDiscussions.py +0 -0
  96. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportIssues.py +0 -0
  97. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportProjects.py +0 -0
  98. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportWikis.py +0 -0
  99. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/TemplateRepository.py +0 -0
  100. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/WebCommitSignoff.py +0 -0
  101. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/__init__.py +0 -0
  102. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/__init__.py +0 -0
  103. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubBase/Module.py +0 -0
  104. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubBase/__init__.py +0 -0
  105. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Impl/ExistsRequirementImpl.py +0 -0
  106. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Impl/__init__.py +0 -0
  107. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Module.py +0 -0
  108. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/CodeOwners.py +0 -0
  109. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/Contributing.py +0 -0
  110. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/IssueTemplates.py +0 -0
  111. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/LicenseFile.py +0 -0
  112. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/PullRequestTemplates.py +0 -0
  113. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/ReadMe.py +0 -0
  114. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/SecurityPolicy.py +0 -0
  115. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/__init__.py +0 -0
  116. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/__init__.py +0 -0
  117. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandardsPlugin.py +0 -0
  118. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubPlugin.py +0 -0
  119. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/__init__.py +0 -0
  120. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Query.py +0 -0
  121. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Requirement.py +0 -0
  122. {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/py.typed +0 -0
  123. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/CommandLineProcessor_UnitTest.py +0 -0
  124. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/EntryPoint_UnitTest.py +0 -0
  125. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/ExecuteModules_UnitTest.py +0 -0
  126. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Module_UnitTest.py +0 -0
  127. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugin_UnitTest.py +0 -0
  128. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubCommunityStandards/ExistsRequirementImpl_UnitTest.py +0 -0
  129. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubCommunityStandards/GitHubCommunityStandards_UnitTest.py +0 -0
  130. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubCommunityStandards_EndToEndTest.py +0 -0
  131. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubEnterprise_EndToEndTest.py +0 -0
  132. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionQuery_UnitTest.py +0 -0
  133. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/DismissStalePullRequestApprovals_UnitTest.py +0 -0
  134. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/EnsureStatusChecks_UnitTest.py +0 -0
  135. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireApprovalMostRecentPush_UnitTest.py +0 -0
  136. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireApprovals_UnitTest.py +0 -0
  137. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireCodeOwnerReview_UnitTest.py +0 -0
  138. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireUpToDateBranches_UnitTest.py +0 -0
  139. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicValueRequirementImpl_UnitTest.py +0 -0
  140. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/DefaultBranchQueryRequirements/Protected_UnitTest.py +0 -0
  141. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/DefaultBranchQuery_UnitTest.py +0 -0
  142. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/EnableRulesetRequirementImpl_UnitTest.py +0 -0
  143. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/GitHubModule_UnitTest.py +0 -0
  144. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/GitHubSession_UnitTest.py +0 -0
  145. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/RulesetRequirements_UnitTest.py +0 -0
  146. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/RulsesetQuery_UnitTest.py +0 -0
  147. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/DependabotSecurityUpdates_UnitTest.py +0 -0
  148. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/Description_UnitTest.py +0 -0
  149. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/License_UnitTest.py +0 -0
  150. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/MergeCommitMessage_UnitTest.py +0 -0
  151. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/Private_UnitTest.py +0 -0
  152. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/SecretScanningPushProtection_UnitTest.py +0 -0
  153. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/SecretScanning_UnitTest.py +0 -0
  154. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/SquashMergeCommitMessage_UnitTest.py +0 -0
  155. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQuery_UnitTest.py +0 -0
  156. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ValueRequrementImpl_UnitTest.py +0 -0
  157. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/fixtures.py +0 -0
  158. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHub_EndToEndTest.py +0 -0
  159. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/__snapshots__/GitHubCommunityStandards_EndToEndTest.ambr +0 -0
  160. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/__snapshots__/GitHubEnterprise_EndToEndTest.ambr +0 -0
  161. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/__snapshots__/GitHub_EndToEndTest.ambr +0 -0
  162. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/conftest.py +0 -0
  163. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/utilities.py +0 -0
  164. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Query_UnitTest.py +0 -0
  165. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Requirement_UnitTest.py +0 -0
  166. {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/__snapshots__/ExecuteModules_UnitTest.ambr +0 -0
  167. {repoauditor-0.2.53 → repoauditor-0.2.55}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: RepoAuditor
3
- Version: 0.2.53
3
+ Version: 0.2.55
4
4
  Summary: Add your description here
5
5
  Project-URL: Homepage, https://github.com/gt-sse-center/RepoAuditor
6
6
  Project-URL: Documentation, https://github.com/gt-sse-center/RepoAuditor
@@ -8,6 +8,7 @@
8
8
 
9
9
  from tempfile import TemporaryDirectory
10
10
  from typing import Any, Optional
11
+ from urllib.parse import urlparse
11
12
 
12
13
  from dbrownell_Common.Types import override # type: ignore[import-untyped]
13
14
 
@@ -50,15 +51,33 @@ class CommunityStandardsQuery(Query):
50
51
  """Get the repo data."""
51
52
 
52
53
  # Clone the GitHub repository to a temp directory
53
- github_url = module_data["url"]
54
54
  branch = module_data.get("branch", "main")
55
55
  temp_repo_dir = TemporaryDirectory()
56
+ github_url = module_data["url"]
57
+
58
+ # Add PAT to GitHub URL, if present
59
+ github_pat = module_data.get("pat")
60
+ if github_pat:
61
+ url = urlparse(github_url)
62
+ github_url = f"https://{github_pat}@{url.netloc}{url.path}"
56
63
 
57
64
  # Import git.Repo here so that it is only imported
58
65
  # if the GitHubCommunityStandards plugin is requested.
59
66
  from git import Repo
60
67
 
61
- Repo.clone_from(github_url, temp_repo_dir.name, branch=branch)
68
+ try:
69
+ Repo.clone_from(github_url, temp_repo_dir.name, branch=branch)
70
+ except Exception as e:
71
+ error_msg = f"""
72
+ An error occurred while attempting to clone the target repository.
73
+ If you are auditing a private repository, {
74
+ "please ensure your PAT has access to the repository."
75
+ if github_pat
76
+ else "please provide a PAT with access to the repository."
77
+ }
78
+ Error: {e}
79
+ """
80
+ raise RuntimeError(error_msg) from e
62
81
 
63
82
  # Record the path and the temp directory for later cleanup
64
83
  module_data["repo_dir"] = temp_repo_dir
@@ -21,10 +21,13 @@ class CodeOfConduct(ExistsRequirementImpl):
21
21
  [
22
22
  ".github/CODE_OF_CONDUCT",
23
23
  ".github/CODE_OF_CONDUCT.md",
24
+ ".github/CODE_OF_CONDUCT.rst",
24
25
  "docs/CODE_OF_CONDUCT",
25
26
  "docs/CODE_OF_CONDUCT.md",
27
+ "docs/CODE_OF_CONDUCT.rst",
26
28
  "CODE_OF_CONDUCT",
27
29
  "CODE_OF_CONDUCT.md",
30
+ "CODE_OF_CONDUCT.rst",
28
31
  ],
29
32
  textwrap.dedent(
30
33
  """\
@@ -2,4 +2,4 @@ APP_NAME = "RepoAuditor"
2
2
 
3
3
  # Note that the default value below will be used until the value
4
4
  # here is explicitly updated by the Continuous Integration system.
5
- __version__ = "0.2.53"
5
+ __version__ = "0.2.55"
@@ -0,0 +1,125 @@
1
+ # -------------------------------------------------------------------------------
2
+ # |
3
+ # | Copyright (c) 2024 Scientific Software Engineering Center at Georgia Tech
4
+ # | Distributed under the MIT License.
5
+ # |
6
+ # -------------------------------------------------------------------------------
7
+ """Unit tests for CommunityStandardsQuery.py"""
8
+
9
+ import pytest
10
+ from git import Repo
11
+
12
+ from RepoAuditor.Plugins.GitHubCommunityStandards.CommunityStandardsQuery import (
13
+ CommunityStandardsQuery,
14
+ TemporaryDirectory,
15
+ )
16
+
17
+
18
+ class MockTemporaryDirectory:
19
+ """A mock class to replace tempfile.TemporaryDirectory."""
20
+
21
+ def __init__(self):
22
+ self.name = "test_temp_directory"
23
+
24
+ def cleanup(self):
25
+ """Mocked cleanup method"""
26
+
27
+
28
+ @pytest.fixture(autouse=True)
29
+ def patch_temp_directory(monkeypatch):
30
+ monkeypatch.delattr("tempfile.TemporaryDirectory")
31
+
32
+
33
+ class TestCommunityStandardsQuery:
34
+ def test_GetData(self, module_data, monkeypatch):
35
+ """Test the GetData method."""
36
+ monkeypatch.setattr(
37
+ TemporaryDirectory,
38
+ "__init__",
39
+ MockTemporaryDirectory.__init__,
40
+ )
41
+
42
+ def mock_clone_from(github_url, repo_dirname, branch="main"):
43
+ """A mocked clone_from method for the git.Repo class."""
44
+ pass
45
+
46
+ monkeypatch.setattr(
47
+ Repo,
48
+ "clone_from",
49
+ mock_clone_from,
50
+ )
51
+
52
+ query = CommunityStandardsQuery()
53
+ query_data = query.GetData(module_data)
54
+
55
+ assert query_data["repo_dir"].name == "test_temp_directory"
56
+
57
+ def test_GetData_adds_pat(self, module_data, monkeypatch):
58
+ """Test the GetData method adds PAT to URL"""
59
+ github_pat = "pat-123"
60
+ github_url = "https://github.com/owner/repo"
61
+ expected_url = "https://pat-123@github.com/owner/repo"
62
+ module_data["url"] = github_url
63
+ module_data["pat"] = github_pat
64
+
65
+ monkeypatch.setattr(
66
+ TemporaryDirectory,
67
+ "__init__",
68
+ MockTemporaryDirectory.__init__,
69
+ )
70
+
71
+ def mock_clone_from(github_url, repo_dirname, branch="main"):
72
+ assert github_url == expected_url
73
+
74
+ monkeypatch.setattr(Repo, "clone_from", mock_clone_from)
75
+
76
+ query = CommunityStandardsQuery()
77
+ _ = query.GetData(module_data)
78
+
79
+ def test_GetData_does_not_add_pat(self, module_data, monkeypatch):
80
+ """Test the GetData method preserves the URL when no PAT is provided"""
81
+ github_url = "https://github.com/owner/repo"
82
+ expected_url = "https://github.com/owner/repo"
83
+ module_data["url"] = github_url
84
+
85
+ monkeypatch.setattr(
86
+ TemporaryDirectory,
87
+ "__init__",
88
+ MockTemporaryDirectory.__init__,
89
+ )
90
+
91
+ def mock_clone_from(github_url, repo_dirname, branch="main"):
92
+ assert github_url == expected_url
93
+
94
+ monkeypatch.setattr(Repo, "clone_from", mock_clone_from)
95
+
96
+ query = CommunityStandardsQuery()
97
+ _ = query.GetData(module_data)
98
+
99
+ def test_GetData_handles_gitpython_errors(self, module_data, monkeypatch):
100
+ """Test the GetData method handles errors raised by the gitpyhon module"""
101
+ gitpython_error_msg = "error cloning repository"
102
+
103
+ monkeypatch.setattr(
104
+ TemporaryDirectory,
105
+ "__init__",
106
+ MockTemporaryDirectory.__init__,
107
+ )
108
+
109
+ def mock_clone_from(github_url, repo_dirname, branch="main"):
110
+ raise Exception(gitpython_error_msg)
111
+
112
+ monkeypatch.setattr(Repo, "clone_from", mock_clone_from)
113
+
114
+ query = CommunityStandardsQuery()
115
+ with pytest.raises(RuntimeError) as e_info:
116
+ _ = query.GetData(module_data)
117
+ assert gitpython_error_msg in str(e_info)
118
+
119
+ def test_Cleanup(self, module_data):
120
+ """Test the Cleanup method."""
121
+ query = CommunityStandardsQuery()
122
+ module_data["repo_dir"] = MockTemporaryDirectory()
123
+ result = query.Cleanup(module_data)
124
+
125
+ assert result is None
@@ -1,63 +0,0 @@
1
- # -------------------------------------------------------------------------------
2
- # |
3
- # | Copyright (c) 2024 Scientific Software Engineering Center at Georgia Tech
4
- # | Distributed under the MIT License.
5
- # |
6
- # -------------------------------------------------------------------------------
7
- """Unit tests for CommunityStandardsQuery.py"""
8
-
9
- import pytest
10
- from git import Repo
11
-
12
- from RepoAuditor.Plugins.GitHubCommunityStandards.CommunityStandardsQuery import (
13
- CommunityStandardsQuery,
14
- TemporaryDirectory,
15
- )
16
-
17
-
18
- def mock_clone_from(github_url, repo_dirname, branch="main"):
19
- """A mocked clone_from method for the git.Repo class."""
20
- pass
21
-
22
-
23
- class MockTemporaryDirectory:
24
- """A mock class to replace tempfile.TemporaryDirectory."""
25
-
26
- def __init__(self):
27
- self.name = "test_temp_directory"
28
-
29
- def cleanup(self):
30
- """Mocked cleanup method"""
31
-
32
-
33
- @pytest.fixture(autouse=True)
34
- def patch_temp_directory(monkeypatch):
35
- monkeypatch.delattr("tempfile.TemporaryDirectory")
36
-
37
-
38
- class TestCommunityStandardsQuery:
39
- def test_GetData(self, module_data, monkeypatch):
40
- """Test the GetData method."""
41
- monkeypatch.setattr(
42
- TemporaryDirectory,
43
- "__init__",
44
- MockTemporaryDirectory.__init__,
45
- )
46
- monkeypatch.setattr(
47
- Repo,
48
- "clone_from",
49
- mock_clone_from,
50
- )
51
-
52
- query = CommunityStandardsQuery()
53
- query_data = query.GetData(module_data)
54
-
55
- assert query_data["repo_dir"].name == "test_temp_directory"
56
-
57
- def test_Cleanup(self, module_data):
58
- """Test the Cleanup method."""
59
- query = CommunityStandardsQuery()
60
- module_data["repo_dir"] = MockTemporaryDirectory()
61
- result = query.Cleanup(module_data)
62
-
63
- assert result is None
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes