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.
- {repoauditor-0.2.53 → repoauditor-0.2.55}/PKG-INFO +1 -1
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/CommunityStandardsQuery.py +21 -2
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/CodeOfConduct.py +3 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/__init__.py +1 -1
- repoauditor-0.2.55/tests/Plugins/GitHubCommunityStandards/CommunityStandardsQuery_UnitTest.py +125 -0
- repoauditor-0.2.53/tests/Plugins/GitHubCommunityStandards/CommunityStandardsQuery_UnitTest.py +0 -63
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.copier-answers.yml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/CODEOWNERS +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/ISSUE_TEMPLATE/custom.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/actions/release_impl/action.yml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/pull_request_template.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/release_sources.yaml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/workflows/CICD.yml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/workflows/CICD_impl.yml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/workflows/EndToEnd.yml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.github/workflows/codeql.yml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.gitignore +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.pre-commit-config.yaml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/.python-version +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/CODE_OF_CONDUCT.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/CONTRIBUTING.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/DEVELOPMENT.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/GOVERNANCE.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/LICENSE +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/MAINTAINERS.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/README.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/SECURITY.md +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/default_config.yaml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/minisign_key.pub +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/pyproject.toml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/AutoGitSemVer.yaml +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/CommandLineProcessor.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Display.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/EntryPoint.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/ExecuteModules.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Impl/ParallelSequentialProcessor.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Impl/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Module.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugin.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionQuery.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/AllowDeletions.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/AllowMainlineForcePushes.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/DismissStalePullRequestApprovals.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/DoNotAllowBypassSettings.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/EnsureStatusChecks.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/ClassicEnableRequirementImpl.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/ClassicValueRequirementImpl.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireApprovalMostRecentPush.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireApprovals.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireCodeOwnerReview.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireConversationResolution.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireLinearHistory.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequirePullRequests.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireSignedCommits.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireStatusChecksToPass.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireUpToDateBranches.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQuery.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQueryRequirements/Protected.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQueryRequirements/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/Common.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/EnableRequirementImpl.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/EnableRulesetRequirementImpl.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/ValueRequirementImpl.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Impl/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/Module.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetQuery.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetRequirements/RequirePullRequests.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetRequirements/RequireSignedCommits.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetRequirements/RequireStatusChecks.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/RulesetRequirements/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQuery.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/AutoMerge.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DefaultBranch.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DeleteHeadBranches.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DependabotSecurityUpdates.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Description.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/StandardEnableRequirementImpl.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/StandardValueRequirementImpl.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/License.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/MergeCommit.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/MergeCommitMessage.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Private.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/RebaseMergeCommit.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SecretScanning.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SecretScanningPushProtection.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SquashCommitMerge.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SquashMergeCommitMessage.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SuggestUpdatingPullRequestBranches.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportDiscussions.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportIssues.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportProjects.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportWikis.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/TemplateRepository.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/WebCommitSignoff.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubBase/Module.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubBase/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Impl/ExistsRequirementImpl.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Impl/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Module.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/CodeOwners.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/Contributing.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/IssueTemplates.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/LicenseFile.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/PullRequestTemplates.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/ReadMe.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/SecurityPolicy.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandardsPlugin.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubPlugin.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/__init__.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Query.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Requirement.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/py.typed +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/CommandLineProcessor_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/EntryPoint_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/ExecuteModules_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Module_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugin_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubCommunityStandards/ExistsRequirementImpl_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubCommunityStandards/GitHubCommunityStandards_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubCommunityStandards_EndToEndTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubEnterprise_EndToEndTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionQuery_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/DismissStalePullRequestApprovals_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/EnsureStatusChecks_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireApprovalMostRecentPush_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireApprovals_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireCodeOwnerReview_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireUpToDateBranches_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ClassicValueRequirementImpl_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/DefaultBranchQueryRequirements/Protected_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/DefaultBranchQuery_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/EnableRulesetRequirementImpl_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/GitHubModule_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/GitHubSession_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/RulesetRequirements_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/RulsesetQuery_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/DependabotSecurityUpdates_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/Description_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/License_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/MergeCommitMessage_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/Private_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/SecretScanningPushProtection_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/SecretScanning_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQueryRequirements/SquashMergeCommitMessage_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQuery_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ValueRequrementImpl_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/fixtures.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHub_EndToEndTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/__snapshots__/GitHubCommunityStandards_EndToEndTest.ambr +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/__snapshots__/GitHubEnterprise_EndToEndTest.ambr +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/__snapshots__/GitHub_EndToEndTest.ambr +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/conftest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/utilities.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Query_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Requirement_UnitTest.py +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/tests/__snapshots__/ExecuteModules_UnitTest.ambr +0 -0
- {repoauditor-0.2.53 → repoauditor-0.2.55}/uv.lock +0 -0
|
@@ -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
|
-
|
|
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
|
"""\
|
|
@@ -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
|
repoauditor-0.2.53/tests/Plugins/GitHubCommunityStandards/CommunityStandardsQuery_UnitTest.py
DELETED
|
@@ -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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Impl/ParallelSequentialProcessor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQuery.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Module.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/src/RepoAuditor/Plugins/GitHubCommunityStandardsPlugin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubCommunityStandards_EndToEndTest.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/DefaultBranchQuery_UnitTest.py
RENAMED
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/GitHubModule_UnitTest.py
RENAMED
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/GitHubSession_UnitTest.py
RENAMED
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/RulesetRequirements_UnitTest.py
RENAMED
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/RulsesetQuery_UnitTest.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/StandardQuery_UnitTest.py
RENAMED
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/GitHubModule/ValueRequrementImpl_UnitTest.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.53 → repoauditor-0.2.55}/tests/Plugins/__snapshots__/GitHub_EndToEndTest.ambr
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|