gitforge/tests/integration
Clouds e847a11127 chore: bump golangci-lint version (#13211)
As described in https://codeberg.org/forgejo/forgejo/issues/13205, golangci-lint introduced a new linting rule related to iterating over slices in reverse. This PR updates golangci-lint to the newest otherwise functioning version (v2.12.1) and makes all code compliant with the newly introduced rule.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/13211
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2026-06-27 00:35:03 +02:00
..
fixtures feat: setting to add team members by invitations (#12845) 2026-06-15 01:46:25 +02:00
migration-test fix(coverage): Integration tests don't run with coverage (#12978) 2026-06-13 23:25:38 +02:00
schemas
actions_commit_status_test.go
actions_concurrency_group_queue_test.go
actions_create_task_for_runner_test.go chore: re-enable nilnil lint for models/actions/task.go (#12768) 2026-06-05 01:38:23 +02:00
actions_fetch_task_test.go chore(services/actions/task.go): re-enable nilnil lint (#13089) 2026-06-20 03:48:17 +02:00
actions_job_test.go fix: jobs with ${{ needs.x.[...] }} inherit the skip state of job x (#13174) 2026-06-23 21:19:11 +02:00
actions_log_test.go feat: ensure repo-specific access tokens can't perform repo admin operations (#11736) 2026-03-20 16:14:36 +01:00
actions_notifications_test.go feat: ensure repo-specific access tokens can't perform repo admin operations (#11736) 2026-03-20 16:14:36 +01:00
actions_route_test.go
actions_run_now_done_notification_test.go
actions_run_test.go feat: enable manual prioritization of workflow runs (#13045) 2026-06-18 00:58:33 +02:00
actions_runner_test.go chore(services/actions/task.go): re-enable nilnil lint (#13089) 2026-06-20 03:48:17 +02:00
actions_runs_list_test.go feat: show workflow name for scheduled runs (#11770) 2026-03-24 01:27:32 +01:00
actions_secrets_test.go feat: allow renaming and replacing secrets (#11732) 2026-03-23 03:30:02 +01:00
actions_token_metadata_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
actions_trigger_test.go fix: use proper ${{ forgejo.ref }} in scheduled workflows (#13081) 2026-06-15 04:15:07 +02:00
actions_trust_test.go feat: evaluate action job's if on the server-side when possible (#13030) 2026-06-16 00:02:57 +02:00
actions_variables_test.go fix: normalize secrets consistently, display accurate help (#11052) 2026-02-09 17:02:18 +01:00
actions_view_test.go feat: add warnings for usage of unsupported permissions: in Actions workflows (#13164) 2026-06-23 21:30:19 +02:00
activitypub_client_test.go
admin_auth_source_test.go fix: improve OAuth2 experience (#11715) 2026-03-17 18:44:23 +01:00
admin_config_test.go
admin_dashboard_test.go
admin_federation_test.go feat: add admin views for federation configuration, hosts and users (#11115) 2026-04-09 19:38:33 +02:00
admin_moderation_test.go
admin_repo_test.go
admin_user_test.go feat: apply service.VALID_SITE_URL_SCHEMES to apply to repository and organization profiles (#12962) 2026-06-08 15:17:51 +02:00
api_actions_artifact_test.go
api_actions_artifact_v4_test.go feat: expose immutable identifiers in Forgejo Actions JWTs (#12355) 2026-05-03 15:46:58 +02:00
api_actions_id_token_test.go ci: fix merge conflict in test between #12355 & #12364 (#12401) 2026-05-03 19:55:40 +02:00
api_actions_job_logs_test.go feat(api): expose action job + run logs via REST (#12666) 2026-05-30 01:45:32 +02:00
api_actions_oidc_test.go feat: expose immutable identifiers in Forgejo Actions JWTs (#12355) 2026-05-03 15:46:58 +02:00
api_actions_run_logs_test.go feat(api): expose action job + run logs via REST (#12666) 2026-05-30 01:45:32 +02:00
api_activitypub_actor_test.go fix(activitypub): cover all routes with signature checks (#12339) 2026-05-08 00:40:01 +02:00
api_activitypub_person_inbox_follow_test.go feat: Follow remote users; feed tab (#10380) 2026-04-12 03:31:03 +02:00
api_activitypub_person_inbox_useractivity_test.go tests: better factory with forgery package (#11356) 2026-05-12 20:57:02 +02:00
api_activitypub_person_test.go fix(activitypub): cover all routes with signature checks (#12339) 2026-05-08 00:40:01 +02:00
api_activitypub_repository_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
api_admin_actions_test.go feat: expose run_id in ...actions/runners/jobs endpoint (#12480) 2026-05-09 02:31:03 +02:00
api_admin_org_test.go ui: move "New access token" to a separate UI page (#11659) 2026-03-18 22:33:14 +01:00
api_admin_test.go feat: apply service.VALID_SITE_URL_SCHEMES to apply to repository and organization profiles (#12962) 2026-06-08 15:17:51 +02:00
api_admin_user_token_test.go feat: expose access token creation date in API responses (#12620) 2026-05-20 18:45:38 +02:00
api_block_test.go
api_branch_test.go
api_comment_attachment_test.go fix: comment attachment API is more restrictive than the web UI (#11623) 2026-03-19 01:39:29 +01:00
api_comment_test.go fix: GET /repos/{owner}/{repo}/issues/comments/{id} does not fail if the poster is a deleted user (#13140) 2026-06-23 20:10:33 +02:00
api_federation_httpsig_test.go fix(activitypub): cover all routes with signature checks (#12339) 2026-05-08 00:40:01 +02:00
api_feed_plain_text_titles_test.go
api_forgejo_root_test.go
api_forgejo_version_test.go
api_fork_test.go fix: make the fork API respect CanCreateOrgRepo policy (#12442) 2026-05-15 05:16:07 +02:00
api_gitignore_templates_test.go
api_gpg_keys_test.go
api_health_test.go
api_helper_for_declarative_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
api_httpsig_test.go
api_issue_attachment_test.go
api_issue_config_test.go feat: replace repo based server-side hooks with centralised hooks (#10397) 2026-04-27 22:34:46 +02:00
api_issue_label_test.go
api_issue_milestone_test.go
api_issue_pin_test.go
api_issue_reaction_test.go
api_issue_stopwatch_test.go
api_issue_subscription_test.go
api_issue_templates_test.go
api_issue_test.go chore: TestAPIInternalAndExternalIssueTracker uses the wrong repository (#12706) 2026-05-23 15:18:38 +02:00
api_issue_tracked_time_test.go feat: remove admin-level permissions from repo-specific & public-only access tokens (#11468) 2026-03-04 16:17:41 +01:00
api_keys_test.go fix: expose API fields for ssh keys (#12517) (#12625) 2026-05-18 17:44:37 +02:00
api_label_templates_test.go
api_license_templates_test.go
api_misc_test.go
api_nodeinfo_test.go
api_notification_test.go
api_oauth2_apps_test.go
api_org_actions_test.go feat: expose run_id in ...actions/runners/jobs endpoint (#12480) 2026-05-09 02:31:03 +02:00
api_org_avatar_test.go fix(coverage): Integration tests don't run with coverage (#12978) 2026-06-13 23:25:38 +02:00
api_org_secrets_test.go feat: allow renaming and replacing secrets (#11732) 2026-03-23 03:30:02 +01:00
api_org_test.go feat: apply service.VALID_SITE_URL_SCHEMES to apply to repository and organization profiles (#12962) 2026-06-08 15:17:51 +02:00
api_org_variables_test.go tests: better factory with forgery package (#11356) 2026-05-12 20:57:02 +02:00
api_packages_alpine_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_alt_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
api_packages_arch_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_cargo_test.go
api_packages_chef_test.go refactor: clarify four different outputs that authentication methods provide (#12231) 2026-04-23 02:30:41 +02:00
api_packages_composer_test.go
api_packages_conan_test.go feat: allow Authorized Integrations to authenticate to Forgejo's package registries (#12310) 2026-04-29 19:13:01 +02:00
api_packages_conda_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_container_cleanup_sha256_test.go Revert "fix: add challenge for HTTP Basic Authentication to container registry" (#12058) 2026-04-09 12:21:44 +02:00
api_packages_container_cleanup_test.go
api_packages_container_test.go feat: allow Authorized Integrations to authenticate to Forgejo's package registries (#12310) 2026-04-29 19:13:01 +02:00
api_packages_cran_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_debian_test.go fix: duplicate key violates unique constraint in concurrent debian package uploads (#11776) 2026-03-26 21:50:25 +01:00
api_packages_generic_test.go fix: add support the http HEAD request method for generic packages (#12865) 2026-06-18 23:33:50 +02:00
api_packages_goproxy_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_helm_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_maven_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
api_packages_npm_test.go fix(api): package name in route not properly unescaped (#11822) 2026-03-26 15:30:16 +01:00
api_packages_nuget_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_pub_test.go
api_packages_pypi_test.go feat: support simple JSON API for PyPI package registry (#12095) 2026-04-30 16:58:28 +02:00
api_packages_rpm_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_rubygems_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_packages_swift_test.go fix: Update swift package registry to use the metadata schema from the official Swift docs (#12200) 2026-06-26 04:25:56 +02:00
api_packages_test.go fix: debian package cleanup failure due to xorm connection corruption (#12764) 2026-05-27 17:47:11 +02:00
api_packages_vagrant_test.go fix: return bad request on malformed packages upload input (#10954) 2026-02-13 18:04:19 +01:00
api_private_serv_test.go tests: better factory with forgery package (#11356) 2026-05-12 20:57:02 +02:00
api_pull_commits_test.go
api_pull_review_test.go feat(api,ui): add multiline comment on pullrequest (#12582) 2026-06-03 16:06:29 +02:00
api_pull_test.go fix: return API URL in the url field for pull requests using the API (#12643) 2026-05-25 04:01:17 +02:00
api_push_mirror_test.go fix: compliance with [migrations].ALLOWED_DOMAINS, ...BLOCKED_DOMAINS, and ....ALLOW_LOCALNETWORKS for git & LFS ops (#13129) 2026-06-23 23:40:25 +02:00
api_quota_management_test.go
api_quota_use_test.go chore: bump golangci-lint version (#13211) 2026-06-27 00:35:03 +02:00
api_releases_test.go 2026-06-10 security patches (#13001) 2026-06-10 06:05:01 +02:00
api_repo_action_artifact_test.go feat(api): add REST API endpoints for Actions artifacts (#12140) 2026-04-20 05:10:54 +02:00
api_repo_actions_test.go feat(api): add new /repos/{owner}/{repo}/actions/runs/{run_id}/cancel API endpoint (#12957) 2026-06-09 04:00:56 +02:00
api_repo_activities_test.go tests: better factory with forgery package (#11356) 2026-05-12 20:57:02 +02:00
api_repo_archive_test.go
api_repo_avatar_test.go fix(coverage): Integration tests don't run with coverage (#12978) 2026-06-13 23:25:38 +02:00
api_repo_branch_test.go feat: implement repo-specific access tokens broadly for universal API permission checks (#11437) 2026-02-28 19:47:06 +01:00
api_repo_collaborator_test.go
api_repo_compare_test.go feat: implement fine-grained access tokens in /repos/{owner}/{repo}/pulls & /repos/{owner}/{repo}/compare/{basehead} APIs 2026-03-01 17:05:53 +01:00
api_repo_convert_test.go feat: ensure repo-specific access tokens can't perform repo admin operations (#11736) 2026-03-20 16:14:36 +01:00
api_repo_edit_test.go feat: ensure repo-specific access tokens can't perform repo admin operations (#11736) 2026-03-20 16:14:36 +01:00
api_repo_file_create_test.go
api_repo_file_delete_test.go
api_repo_file_get_test.go
api_repo_file_helpers.go
api_repo_file_update_test.go
api_repo_files_change_test.go feat: adds option to force overwrite new branch for /contents route (#12663) 2026-06-06 16:45:57 +02:00
api_repo_get_contents_list_test.go
api_repo_get_contents_test.go
api_repo_git_blobs_test.go ui: move "New access token" to a separate UI page (#11659) 2026-03-18 22:33:14 +01:00
api_repo_git_commits_test.go
api_repo_git_hook_test.go fix(git): treat missing hooks folder the same as missing hook file (#12833) 2026-05-31 14:41:28 +02:00
api_repo_git_notes_test.go
api_repo_git_ref_test.go
api_repo_git_tags_test.go
api_repo_git_trees_test.go ui: move "New access token" to a separate UI page (#11659) 2026-03-18 22:33:14 +01:00
api_repo_hook_test.go
api_repo_languages_test.go
api_repo_lfs_locks_test.go feat: enable auth to git LFS via authorized integrations (#12725) 2026-05-28 23:20:58 +02:00
api_repo_lfs_migrate_test.go fix: compliance with [migrations].ALLOWED_DOMAINS, ...BLOCKED_DOMAINS, and ....ALLOW_LOCALNETWORKS for git & LFS ops (#13129) 2026-06-23 23:40:25 +02:00
api_repo_lfs_test.go feat: enable auth to git LFS via authorized integrations (#12725) 2026-05-28 23:20:58 +02:00
api_repo_pulls_test.go
api_repo_raw_test.go
api_repo_secrets_test.go feat: allow renaming and replacing secrets (#11732) 2026-03-23 03:30:02 +01:00
api_repo_tags_test.go
api_repo_teams_test.go
api_repo_test.go fix: cleanup data before migration retry (#12370) 2026-05-05 12:41:42 +02:00
api_repo_topic_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
api_repo_variables_test.go fix: normalize secrets consistently, display accurate help (#11052) 2026-02-09 17:02:18 +01:00
api_settings_test.go
api_team_test.go feat: setting to add team members by invitations (#12845) 2026-06-15 01:46:25 +02:00
api_team_user_test.go
api_token_test.go feat: expose access token creation date in API responses (#12620) 2026-05-20 18:45:38 +02:00
api_twofa_test.go refactor: split "basic" and "oauth2" authentication impl into smaller single-purpose components (#12236) 2026-04-24 18:19:58 +02:00
api_user_actions_test.go feat: expose run_id in ...actions/runners/jobs endpoint (#12480) 2026-05-09 02:31:03 +02:00
api_user_avatar_test.go fix(coverage): Integration tests don't run with coverage (#12978) 2026-06-13 23:25:38 +02:00
api_user_email_test.go
api_user_follow_federation_test.go feat: Follow remote users; feed tab (#10380) 2026-04-12 03:31:03 +02:00
api_user_follow_test.go
api_user_heatmap_test.go
api_user_info_test.go
api_user_org_perm_test.go
api_user_orgs_test.go feat(api): return created time in /org/{org} endpoint (#12633) 2026-05-28 21:25:41 +02:00
api_user_search_test.go
api_user_secrets_test.go feat: allow renaming and replacing secrets (#11732) 2026-03-23 03:30:02 +01:00
api_user_star_test.go fix: load repo language for converting to api struct (#12737) 2026-05-28 17:00:40 +02:00
api_user_variables_test.go fix: normalize secrets consistently, display accurate help (#11052) 2026-02-09 17:02:18 +01:00
api_user_watch_test.go feat: implement fine-grained access tokens in /user/subscriptions & /users/{username}/subscriptions 2026-03-01 17:05:53 +01:00
api_wiki_test.go feat: fsck incoming objects (#12695) 2026-05-25 14:51:04 +02:00
apiv1_permissions_test.go chore(refactor): run routers/api/v1/permissions/tests from tests/integration (#13157) 2026-06-21 21:43:57 +02:00
appearance_settings_test.go fix(ui): fall back to default theme from non-existent (#13110) 2026-06-17 19:18:09 +02:00
archived_labels_display_test.go
attachment_test.go feat: enable auth to raw resources, release downloads, & attachments via authorized integrations (#12776) 2026-05-29 02:11:43 +02:00
auth_authorized_integration_test.go feat: add repo-specific & public-only authz reducers to authorized integrations (#12267) 2026-04-26 23:54:41 +02:00
auth_ldap_test.go
auth_token_test.go
avatar.png
benchmarks_test.go
block_test.go
branches_test.go
change_default_branch_test.go fix: use proper ${{ forgejo.ref }} in scheduled workflows (#13081) 2026-06-15 04:15:07 +02:00
cmd_admin_test.go
cmd_forgejo_actions_test.go refactor(tests): drop the need to compile gitea binary manually (#12855) 2026-06-02 00:04:50 +02:00
cmd_forgejo_f3_test.go
cmd_keys_test.go
codeowner_test.go
comment_roles_system_test.go
comment_roles_test.go fix: when reviewing in PRs, make comments relative to the visible code's commit (#12055) 2026-04-12 01:20:54 +02:00
commit_status_test.go feat: mark skipped checks as skipped (#12606) 2026-05-17 18:00:49 +02:00
common_navigation_test.go
compare_test.go tests: better factory with forgery package (#11356) 2026-05-12 20:57:02 +02:00
cors_test.go
create_no_session_test.go chore: update ingration test 2026-03-20 07:00:48 +01:00
csrf_test.go
db_collation_test.go
db_query_test.go refactor: reduce code duplication when accessing DefaultMaxInSize (#11999) 2026-04-05 22:03:45 +02:00
delete_user_test.go
disable_forgotten_password_test.go
doctor_avatars_test.go feat: serve downsized versions of avatars (#11242) 2026-05-16 12:04:05 +02:00
doctor_packages_nuget_test.go
doctor_storage_test.go feat: serve downsized versions of avatars (#11242) 2026-05-16 12:04:05 +02:00
download_test.go feat: enable auth to raw resources, release downloads, & attachments via authorized integrations (#12776) 2026-05-29 02:11:43 +02:00
dummy_lang_test.go
dump_restore_test.go fix: compliance with [migrations].ALLOWED_DOMAINS, ...BLOCKED_DOMAINS, and ....ALLOW_LOCALNETWORKS for git & LFS ops (#13129) 2026-06-23 23:40:25 +02:00
easymde_test.go
editor_test.go
email_block_allowlist_test.go
empty_repo_test.go feat: replace repo based server-side hooks with centralised hooks (#10397) 2026-04-27 22:34:46 +02:00
ephemeral_actions_runner_deletion_test.go fix: cleanup data before migration retry (#12370) 2026-05-05 12:41:42 +02:00
error_pages_test.go
eventsource_test.go
explore_code_test.go
explore_org_test.go
explore_repos_test.go
explore_user_test.go
federation_home_template_test.go feat: Follow remote users; feed tab (#10380) 2026-04-12 03:31:03 +02:00
feed_repo_test.go
feed_user_test.go
footer_test.go chore(ui): add integration tests for footer tmpl logic (#11197) 2026-02-08 23:55:30 +01:00
forgejo_confirmation_repo_test.go
forgejo_git_test.go
form_validation_test.go feat: in-browser validation of website URLs for user, repository, and organization profiles (#12991) 2026-06-08 17:35:15 +02:00
git_helper_for_declarative_test.go refactor(tests): drop the need to compile gitea binary manually (#12855) 2026-06-02 00:04:50 +02:00
git_hooks_test.go cleanup(tests): remove unused git hooks directories in testdata (#12824) 2026-05-31 20:24:25 +02:00
git_push_test.go refactor(tests): drop the need to compile gitea binary manually (#12855) 2026-06-02 00:04:50 +02:00
git_smart_http_test.go feat: enable auth to git HTTP via authorized integrations (#12715) 2026-05-25 19:33:36 +02:00
git_test.go feat(ui): commit view redesign for pull request page (#7948) 2026-06-02 20:12:32 +02:00
goget_test.go
html_helper.go feat: view authorized integration (generic) 2026-05-14 23:54:16 +02:00
incoming_email_test.go fix: make email token extraction case-insensitive (#12460) 2026-05-30 13:29:28 +02:00
integration_test.go chore: restore ability to run with 'go test' (#12996) 2026-06-10 15:58:21 +02:00
issue_comment_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
issue_list_filters_test.go fix(ui): fix typo in issue sort dropdown; relevance was misnamed as relevency (#12771) 2026-05-28 20:48:25 +02:00
issue_subscribe_test.go
issue_test.go fix(issue-search): drop all labels ids if no label (0) is present (#12665) 2026-05-21 22:21:05 +02:00
issue_tracked_time_test.go
last_updated_time_test.go
lfs_getobject_test.go
lfs_local_endpoint_test.go
lfs_view_test.go feat: enable auth to git LFS via authorized integrations (#12725) 2026-05-28 23:20:58 +02:00
linguist_test.go fix(ui): show "Shell" instead of "Bash" in headers of shell script files (#12562) 2026-05-14 22:33:51 +02:00
links_test.go chore: skip sha256 repo for older git versions (#11542) 2026-03-07 15:58:31 +01:00
markup_external_test.go feat: match on compound filename extensions (#11439) 2026-03-19 01:25:51 +01:00
markup_test.go
mention_test.go
migrate_test.go fix: compliance with [migrations].ALLOWED_DOMAINS, ...BLOCKED_DOMAINS, and ....ALLOW_LOCALNETWORKS for git & LFS ops (#13129) 2026-06-23 23:40:25 +02:00
milestone_test.go
mirror_pull_test.go fix: compliance with [migrations].ALLOWED_DOMAINS, ...BLOCKED_DOMAINS, and ....ALLOW_LOCALNETWORKS for git & LFS ops (#13129) 2026-06-23 23:40:25 +02:00
mirror_push_test.go fix: compliance with [migrations].ALLOWED_DOMAINS, ...BLOCKED_DOMAINS, and ....ALLOW_LOCALNETWORKS for git & LFS ops (#13129) 2026-06-23 23:40:25 +02:00
navbar_test.go
new_org_test.go
nonascii_branches_test.go
notification_test.go
oauth_test.go feat: add option to use preferred_username claim when registering users via oauth2 (#12504) 2026-05-18 00:14:46 +02:00
opengraph_test.go
org_count_test.go
org_members_test.go feat: setting to add team members by invitations (#12845) 2026-06-15 01:46:25 +02:00
org_nav_test.go
org_profile_test.go
org_project_test.go
org_settings_test.go feat: apply service.VALID_SITE_URL_SCHEMES to apply to repository and organization profiles (#12962) 2026-06-08 15:17:51 +02:00
org_team_invite_test.go feat: setting to add team members by invitations (#12845) 2026-06-15 01:46:25 +02:00
org_team_test.go feat: setting to add team members by invitations (#12845) 2026-06-15 01:46:25 +02:00
org_test.go fix(ui): bring back non-empty check to ThemeName (#13175) 2026-06-23 11:53:17 +02:00
patch_status_test.go tests: better factory with forgery package (#11356) 2026-05-12 20:57:02 +02:00
pathutils_test.go
private-testing.key
private_project_test.go
privateactivity_test.go
project_test.go fix(web): org projects assignment in issue view (#7999) 2026-05-02 01:29:40 +02:00
protected_branch_test.go
pull_auto_merge_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
pull_commit_test.go feat(ui): commit view redesign for pull request page (#7948) 2026-06-02 20:12:32 +02:00
pull_compare_test.go
pull_create_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
pull_diff_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
pull_editable_test.go
pull_files_test.go
pull_icon_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
pull_merge_instruction_test.go
pull_merge_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
pull_reopen_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
pull_request_task_test.go
pull_review_test.go fix: multiline comment invalidation (#12950) 2026-06-09 03:07:56 +02:00
pull_status_test.go feat(ui): commit view redesign for pull request page (#7948) 2026-06-02 20:12:32 +02:00
pull_summary_test.go
pull_test.go chore(i18n): May 2026 maintenence (#12718) 2026-05-25 10:59:49 +02:00
pull_update_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
pull_wip_convert_test.go
quota_use_test.go chore: bump golangci-lint version (#13211) 2026-06-27 00:35:03 +02:00
README.md
release_feed_test.go
release_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
remote_test.go
rename_branch_test.go
repo_activity_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
repo_archive_test.go feat: enable auth to raw resources, release downloads, & attachments via authorized integrations (#12776) 2026-05-29 02:11:43 +02:00
repo_archive_text_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
repo_avatar_test.go fix: skip repo avatar upload when no file is selected (#11335) 2026-03-07 20:53:23 +01:00
repo_badges_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
repo_branch_test.go
repo_citation_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
repo_collaborator_test.go
repo_commit_test.go ench: use GET for lastcommit route (#12670) 2026-05-22 10:40:28 +02:00
repo_commits_search_test.go feat: show breadcrumb path in path filtered commit history view (#12116) 2026-05-01 01:53:10 +02:00
repo_commits_tags_test.go
repo_commits_template_test.go
repo_commits_test.go fix: return 404 instead of 500 for non-existing SHA in commit status endpoint (#12476) 2026-05-21 21:52:34 +02:00
repo_delete_test.go
repo_flags_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
repo_forgefed_test.go feat: add admin views for federation configuration, hosts and users (#11115) 2026-04-09 19:38:33 +02:00
repo_fork_test.go
repo_generate_test.go tests: better factory with forgery package (#11356) 2026-05-12 20:57:02 +02:00
repo_git_note_test.go
repo_issue_title_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
repo_mergecommit_revert_test.go feat: replace repo based server-side hooks with centralised hooks (#10397) 2026-04-27 22:34:46 +02:00
repo_migrate_credentials_test.go fix: compliance with [migrations].ALLOWED_DOMAINS, ...BLOCKED_DOMAINS, and ....ALLOW_LOCALNETWORKS for git & LFS ops (#13129) 2026-06-23 23:40:25 +02:00
repo_migrate_test.go
repo_migration_ui_test.go
repo_pagination_test.go
repo_search_test.go
repo_settings_hook_test.go
repo_settings_test.go feat: apply service.VALID_SITE_URL_SCHEMES to apply to repository and organization profiles (#12962) 2026-06-08 15:17:51 +02:00
repo_signed_tag_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
repo_star_federation_test.go chore: update github.com/go-ap/activitypub to 902f6cf (#11301) 2026-04-02 23:57:13 +02:00
repo_starwatch_test.go
repo_sync_fork_test.go
repo_tag_test.go ui: move "New access token" to a separate UI page (#11659) 2026-03-18 22:33:14 +01:00
repo_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
repo_topic_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
repo_view_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
repo_watch_test.go
repo_webhook_test.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
repo_wiki_test.go
repofiles_change_test.go
runner_test.go feat: add form-based runner management (#11516) 2026-03-12 02:14:45 +01:00
session_test.go
setting_test.go
signin_test.go fix: URL-encode login provider name in the href attribute (#10301) 2026-03-31 21:51:57 +02:00
signing_git_test.go fix(coverage): Integration tests don't run with coverage (#12978) 2026-06-13 23:25:38 +02:00
signout_test.go
signup_test.go fix: enable "Add more..." unit hint for new users (#12565) 2026-05-27 20:44:44 +02:00
ssh-signing-key
ssh-signing-key.pub
ssh_key_test.go refactor(tests): drop the need to compile gitea binary manually (#12855) 2026-06-02 00:04:50 +02:00
swagger_test.go
timetracking_test.go
translations_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
user_avatar_test.go feat: serve downsized versions of avatars (#11242) 2026-05-16 12:04:05 +02:00
user_count_test.go
user_dashboard_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
user_federationhost_xorm_test.go
user_keys_test.go fix(ui): use URL query escaping for SSH key verification reload token link (#12581) 2026-05-16 11:51:17 +02:00
user_profile_actions_test.go
user_profile_attributes_test.go
user_profile_follows_test.go
user_profile_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
user_recovery_test.go
user_redirect_test.go
user_settings_test.go feat: apply service.VALID_SITE_URL_SCHEMES to apply to repository and organization profiles (#12962) 2026-06-08 15:17:51 +02:00
user_test.go feat: apply service.VALID_SITE_URL_SCHEMES to apply to repository and organization profiles (#12962) 2026-06-08 15:17:51 +02:00
version_test.go
view_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
web_misc_test.go
webfinger_test.go
webhook_test.go
wiki_test.go refactor(tests): use forgery.CreateRepository in more places (#12555) 2026-06-01 11:59:05 +02:00
window_config_test.go
xss_test.go feat: fsck incoming objects (#12695) 2026-05-25 14:51:04 +02:00

Integration tests

Thank you for your effort to provide good software tests for Forgejo. Please also read the general testing instructions in the Forgejo contributor documentation.

This file is meant to provide specific information for the integration tests as well as some tips and tricks you should know.

Feel free to extend this file with more instructions if you feel like you have something to share!

How to run the tests?

Before running any tests, please ensure you perform a clean build:

make clean build

Integration tests can be run with make commands for the appropriate backends, namely:

make test-sqlite
make test-pgsql
make test-mysql

Run tests via local forgejo runner

If you have a forgejo runner, you can use it to run the test jobs:

Run all jobs

forgejo-runner exec -W .forgejo/workflows/testing.yml --event=pull_request

Warning: This file defines many jobs, so it will be resource-intensive and therefore not recommended.

Run single job

forgejo-runner exec -W .forgejo/workflows/testing.yml --event=pull_request -j <job_name>

You can list all job names via:

forgejo-runner exec -W .forgejo/workflows/testing.yml --event=pull_request -l

Run sqlite integration tests

Start tests

make test-sqlite

Run MySQL integration tests

Setup a MySQL database inside docker

docker run -e MYSQL_DATABASE=test -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -p 3306:3306 --rm --name mysql mysql:latest #(Ctrl-c to stop the database)

Start tests based on the database container

TEST_MYSQL_HOST=localhost:3306 TEST_MYSQL_DBNAME=test?multiStatements=true TEST_MYSQL_USERNAME=root TEST_MYSQL_PASSWORD='' make test-mysql

Run pgsql integration tests

Setup a pgsql database inside docker

docker run -e "POSTGRES_DB=test" -e POSTGRES_PASSWORD=postgres -e POSTGRESQL_FSYNC=off -e POSTGRESQL_EXTRA_FLAGS="-c full_page_writes=off" -p 5432:5432 --rm --name pgsql data.forgejo.org/oci/bitnami/postgresql:16 #(Ctrl-c to stop)

Setup a S3 server inside docker

docker run -e MINIO_ROOT_USER=123456 -e MINIO_ROOT_PASSWORD=12345678 -p 9000:9000 --rm --name minio data.forgejo.org/oci/bitnami/minio:2024.8.17 #(Ctrl-c to stop)

Start tests based on the database container

TEST_PGSQL_HOST=localhost:5432 TEST_PGSQL_DBNAME=test TEST_PGSQL_USERNAME=postgres TEST_PGSQL_PASSWORD=postgres TEST_S3_HOST=localhost:9000 make 'test-pgsql#Test'

Running individual tests

Example command to run GPG test:

For SQLite:

make test-sqlite#GPG

For other databases (replace mysql to pgsql):

TEST_MYSQL_HOST=localhost:1433 TEST_MYSQL_DBNAME=test TEST_MYSQL_USERNAME=sa TEST_MYSQL_PASSWORD=MwantsaSecurePassword1 make test-mysql#GPG

Setting timeouts for declaring long-tests and long-flushes

We appreciate that some testing machines may not be very powerful and the default timeouts for declaring a slow test or a slow clean-up flush may not be appropriate.

You can either:

  • Within the test ini file set the following section:
[integration-tests]
SLOW_TEST = 10s ; 10s is the default value
SLOW_FLUSH = 5S ; 5s is the default value
  • Set the following environment variables:
GITEA_SLOW_TEST_TIME="10s" GITEA_SLOW_FLUSH_TIME="5s" make test-sqlite

Tips and tricks

If you know noteworthy tests that can act as an inspiration for new tests, please add some details here.