1
1
mirror of https://github.com/go-gitea/gitea.git synced 2025-02-14 07:41:21 +01:00
gitea/tests/integration
Kemal Zebari ecd463c2f1
Validate that the tag doesn't exist when creating a tag via the web (#33241)
Found while investigating #33210.

This line no longer makes sense because the form field "TagName" is
required, so this would mean that this code path would never be covered.
Because it isn't covered, we end up going down the "update release"
logic where we eventually set `Release.IsTag` to false (meaning it will
now be treated as a release instead of a tag).

This snapshot rewrites the condition to ensure that we aren't trying to
create a tag that already exists.

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-01-14 09:27:35 +08:00
..
migration-test Refactor template & test related code (#32938) 2024-12-22 15:33:19 +00:00
schemas verify nodeinfo response by schema (#22137) 2022-12-17 01:22:34 -05:00
actions_job_test.go Improve Actions test (#32883) 2024-12-26 22:10:30 +00:00
actions_log_test.go Improve Actions test (#32883) 2024-12-26 22:10:30 +00:00
actions_runner_test.go Improve Actions test (#32883) 2024-12-26 22:10:30 +00:00
actions_trigger_test.go Automerge supports deleting branch automatically after merging (#32343) 2025-01-10 03:51:03 +08:00
admin_config_test.go Move admin routers from /admin to /-/admin (#32189) 2024-10-10 04:56:49 +00:00
admin_user_test.go Move admin routers from /admin to /-/admin (#32189) 2024-10-10 04:56:49 +00:00
api_actions_artifact_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_actions_artifact_v4_test.go Refactor tests to prevent from unnecessary preparations (#32398) 2024-11-01 23:18:29 +08:00
api_activitypub_person_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_admin_org_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_admin_test.go Support repo license (#24872) 2024-10-01 15:25:08 -04:00
api_branch_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_comment_attachment_test.go Include file extension checks in attachment API (#32151) 2024-11-06 21:34:32 +00:00
api_comment_test.go Add user blocking (#29028) 2024-03-04 08:16:03 +00:00
api_feed_user_test.go
api_fork_test.go Move team related functions to service layer (#32537) 2024-11-27 21:12:26 +00:00
api_gitignore_templates_test.go Add API for gitignore templates (#22783) 2023-04-27 11:51:20 +08:00
api_gpg_keys_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_helper_for_declarative_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_httpsig_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
api_issue_attachment_test.go Include file extension checks in attachment API (#32151) 2024-11-06 21:34:32 +00:00
api_issue_config_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_issue_label_test.go Support org labels when adding labels by label names (#32988) 2024-12-26 19:14:49 +00:00
api_issue_milestone_test.go Fix milestone deadline and date related problems (#32339) 2024-11-05 07:46:40 +00:00
api_issue_pin_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_issue_reaction_test.go Add user blocking (#29028) 2024-03-04 08:16:03 +00:00
api_issue_stopwatch_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_issue_subscription_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_issue_templates_test.go Refactor issue template parsing and fix API endpoint (#29069) 2024-02-12 05:04:10 +00:00
api_issue_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_issue_tracked_time_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_keys_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_label_templates_test.go Add API for Label templates (#24602) 2023-05-23 18:10:23 +08:00
api_license_templates_test.go Add API for License templates (#23009) 2023-04-26 02:08:28 -04:00
api_nodeinfo_test.go Allow non-admin users to delete review requests (#29057) 2024-02-24 12:38:43 +00:00
api_notification_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_oauth2_apps_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_org_avatar_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_org_test.go Allow code search by filename (#32210) 2024-10-11 23:35:04 +00:00
api_packages_alpine_test.go Integrate alpine noarch packages into other architectures index (#29137) 2024-02-25 15:10:55 +00:00
api_packages_arch_test.go Add Arch package registry (#32692) 2024-12-04 23:09:07 +00:00
api_packages_cargo_test.go Run go generate and go vet on all packages (#30529) 2024-04-17 09:40:35 +00:00
api_packages_chef_test.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +00:00
api_packages_composer_test.go Add bin to Composer Metadata (#32099) 2024-09-21 22:42:17 +00:00
api_packages_conan_test.go Fix nuget/conan/container packages upload bugs (#31967) 2024-09-05 07:05:42 +00:00
api_packages_conda_test.go Support compression for Actions logs (#31761) 2024-08-09 10:10:30 +08:00
api_packages_container_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
api_packages_cran_test.go Add standard-compliant route to serve outdated R packages (#32783) 2024-12-11 16:20:04 +00:00
api_packages_debian_test.go Fix db engine (#32351) 2024-10-27 18:48:07 -04:00
api_packages_generic_test.go Azure blob storage support (#30995) 2024-05-30 07:33:50 +00:00
api_packages_goproxy_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_packages_helm_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_packages_maven_test.go Refactor maven package registry (#33049) 2024-12-31 05:30:52 +00:00
api_packages_npm_test.go Refactor package (routes and error handling, npm peer dependency) (#33111) 2025-01-06 22:45:20 +08:00
api_packages_nuget_test.go Fix nuget/conan/container packages upload bugs (#31967) 2024-09-05 07:05:42 +00:00
api_packages_pub_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_packages_pypi_test.go Use Project-URL metadata field to get a PyPI package's homepage URL (#33089) 2025-01-03 21:09:47 +00:00
api_packages_rpm_test.go Add signature support for the RPM module (#27069) 2024-08-06 09:03:33 -04:00
api_packages_rubygems_test.go Improve rubygems package registry (#31357) 2024-06-17 08:42:46 +00:00
api_packages_swift_test.go Add Swift login endpoint (#32693) 2024-12-03 16:24:16 +00:00
api_packages_test.go Use crypto/sha256 (#29386) 2024-02-25 13:32:13 +00:00
api_packages_vagrant_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_private_serv_test.go Final round of db.DefaultContext refactor (#27587) 2023-10-14 08:37:24 +00:00
api_pull_commits_test.go Refactor older tests to use testify (#33140) 2025-01-09 09:21:47 +08:00
api_pull_review_test.go Refactor older tests to use testify (#33140) 2025-01-09 09:21:47 +08:00
api_pull_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_releases_attachment_test.go Include file extension checks in attachment API (#32151) 2024-11-06 21:34:32 +00:00
api_releases_test.go Handle invalid target when creating releases using API (#31841) 2024-09-12 07:47:31 +00:00
api_repo_archive_test.go Add github compatible tarball download API endpoints (#32572) 2024-11-25 19:35:49 +00:00
api_repo_avatar_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_branch_test.go Fix bug when a token is given public only (#32204) 2024-10-08 12:51:09 +03:00
api_repo_collaborator_test.go Add user blocking (#29028) 2024-03-04 08:16:03 +00:00
api_repo_compare_test.go Make API "compare" accept commit IDs (#32801) 2024-12-12 08:10:09 +00:00
api_repo_edit_test.go Add merge style fast-forward-only (#28954) 2024-02-12 23:37:23 +01:00
api_repo_file_create_test.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00
api_repo_file_delete_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_file_get_test.go Improve testing and try to fix MySQL hanging (#32515) 2024-11-15 23:45:07 +08:00
api_repo_file_helpers.go Move some errors to their own sub packages (#32880) 2024-12-20 18:05:29 +00:00
api_repo_file_update_test.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00
api_repo_files_change_test.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00
api_repo_get_contents_list_test.go Simplify how git repositories are opened (#28937) 2024-01-27 21:09:51 +01:00
api_repo_get_contents_test.go Fix raw file API ref handling (#33172) 2025-01-10 01:31:49 +00:00
api_repo_git_blobs_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_git_commits_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_repo_git_hook_test.go Remove some unnecessary template helpers (#33069) 2025-01-01 18:02:34 +08:00
api_repo_git_notes_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_git_ref_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_git_tags_test.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +00:00
api_repo_git_trees_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_hook_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_languages_test.go
api_repo_lfs_locks_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_repo_lfs_migrate_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_lfs_test.go Fix #31185 try fix lfs download from bitbucket failed (#31201) 2024-06-11 22:22:28 +00:00
api_repo_license_test.go Support repo license (#24872) 2024-10-01 15:25:08 -04:00
api_repo_raw_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_repo_secrets_test.go feat(api): enhance Actions Secrets Management API for repository (#30656) 2024-04-26 21:11:49 +08:00
api_repo_tags_test.go Add lint-go-gopls (#30729) 2024-06-05 09:22:38 +08:00
api_repo_teams_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_repo_test.go Fix get reviewers' bug (#32415) 2024-11-22 10:44:48 -05:00
api_repo_topic_test.go Refactor topic Find functions and add more tests for pagination (#30127) 2024-03-29 11:38:16 +08:00
api_repo_variables_test.go Add API for Variables (#29520) 2024-03-28 20:40:35 +00:00
api_settings_test.go
api_team_test.go Allow everyone to read or write a wiki by a repo unit setting (#30495) 2024-04-17 15:58:37 +00:00
api_team_user_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_token_test.go Fix incorrect /tokens api (#32085) 2024-09-20 19:00:39 +00:00
api_twofa_test.go Fix basic auth with webauthn (#32531) 2024-11-16 17:52:16 +00:00
api_user_avatar_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_user_block_test.go Move RepoTransfer from models to models/repo sub package (#32506) 2024-12-18 11:44:16 +08:00
api_user_email_test.go Unify user update methods (#28733) 2024-02-04 13:29:09 +00:00
api_user_follow_test.go Add user blocking (#29028) 2024-03-04 08:16:03 +00:00
api_user_heatmap_test.go Refactor timeutil package (#28623) 2023-12-28 10:09:57 +00:00
api_user_info_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_user_org_perm_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_user_orgs_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_user_search_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
api_user_secrets_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
api_user_star_test.go Add user blocking (#29028) 2024-03-04 08:16:03 +00:00
api_user_update_test.go Add an api test for updating user (#30539) 2024-04-18 03:16:20 +00:00
api_user_variables_test.go Clarify Actions resources ownership (#31724) 2024-08-01 09:04:04 +00:00
api_user_watch_test.go Add user blocking (#29028) 2024-03-04 08:16:03 +00:00
api_wiki_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
attachment_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
auth_ldap_test.go Refactor tests (#33021) 2024-12-29 01:05:56 +00:00
avatar.png Add API for changing Avatars (#25369) 2023-06-29 23:22:55 +00:00
benchmarks_test.go Replace deprecated math/rand functions (#30733) 2024-04-27 18:50:35 +02:00
branches_test.go Refactor locale&string&template related code (#29165) 2024-02-14 21:48:45 +00:00
change_default_branch_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
cmd_keys_test.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
compare_test.go Refactor pull-request compare&create page (#33071) 2025-01-02 01:16:09 +08:00
cors_test.go Refactor CORS handler (#28587) 2023-12-25 20:13:18 +08:00
create_no_session_test.go Refactor tests (#26464) 2023-08-12 16:30:16 +00:00
csrf_test.go Refactor CSRF protector (#32057) 2024-09-18 15:17:25 +08:00
db_collation_test.go Refactor push mirror find and add check for updating push mirror (#32539) 2024-11-18 05:59:04 +00:00
delete_user_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
download_test.go
dump_restore_test.go Make git clone URL could use current signed-in user (#33091) 2025-01-07 13:17:44 +08:00
editor_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
empty_repo_test.go Refactor context RefName and RepoAssignment (#33226) 2025-01-13 01:07:05 +00:00
eventsource_test.go Convert to url auth to header auth in tests (#28484) 2023-12-21 23:59:59 +00:00
explore_repos_test.go Improve repo search UI (#29767) 2024-03-15 09:45:30 +00:00
explore_user_test.go Remove unnecessary ".Link" usages (#29909) 2024-03-20 13:56:42 +08:00
git_general_test.go Refactor older tests to use testify (#33140) 2025-01-09 09:21:47 +08:00
git_helper_for_declarative_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
git_lfs_ssh_test.go Fix LFS route mock, realm, middleware names (#32488) 2024-11-13 16:58:09 +08:00
git_misc_test.go Improve testing and try to fix MySQL hanging (#32515) 2024-11-15 23:45:07 +08:00
git_push_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
git_smart_http_test.go
goget_test.go Support SSH for go get (#24664) 2023-05-12 09:44:37 +00:00
gpg_git_test.go Refactor older tests to use testify (#33140) 2025-01-09 09:21:47 +08:00
html_helper.go Issue time estimate, meaningful time tracking (#23113) 2024-12-05 13:07:53 +00:00
incoming_email_test.go Split mail sender sub package from mailer service package (#32618) 2024-11-30 01:15:41 +00:00
integration_test.go Refactor env var related code (#33075) 2025-01-02 11:36:50 +08:00
issue_test.go Fix milestone deadline and date related problems (#32339) 2024-11-05 07:46:40 +00:00
lfs_getobject_test.go Remove GetByBean method because sometimes it's danger when query condition parameter is zero and also introduce new generic methods (#28220) 2023-12-07 15:27:36 +08:00
lfs_local_endpoint_test.go
lfs_view_test.go Fix test fixtures for user2/lfs.git (#32477) 2024-11-12 05:41:22 +00:00
linguist_test.go Improve testing and try to fix MySQL hanging (#32515) 2024-11-15 23:45:07 +08:00
links_test.go Refactor RepoRefByType (#32413) 2024-11-05 06:35:54 +00:00
markup_external_test.go Refactor render system (#32492) 2024-11-14 05:02:11 +00:00
migrate_test.go bump to go 1.23 (#31855) 2024-09-10 02:23:07 +00:00
mirror_pull_test.go Move migration functions to services layer (#29497) 2024-03-01 02:23:00 +00:00
mirror_push_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
nonascii_branches_test.go Refactor older tests to use testify (#33140) 2025-01-09 09:21:47 +08:00
oauth_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
org_count_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
org_profile_test.go [Feature] Private README.md for organization (#32872) 2024-12-31 04:22:09 +00:00
org_project_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
org_team_invite_test.go Support for email addresses containing uppercase characters when activating user account (#32998) 2024-12-27 19:16:23 +08:00
org_test.go Ensure GetCSRF doesn't return an empty token (#32130) 2024-09-30 02:28:09 +00:00
private-testing.key
privateactivity_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
project_test.go Rename project board -> column to make the UI less confusing (#30170) 2024-05-27 08:59:54 +00:00
pull_commit_test.go Use batch database operations instead of one by one to optimze api pulls (#32680) 2024-12-11 05:15:06 +08:00
pull_compare_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
pull_create_test.go Fix templating in pull request comparison (#33025) 2024-12-29 01:32:19 +00:00
pull_diff_test.go Add commits dropdown in PR files view and allow commit by commit review (#25528) 2023-07-28 21:18:12 +02:00
pull_merge_test.go Automerge supports deleting branch automatically after merging (#32343) 2025-01-10 03:51:03 +08:00
pull_review_test.go Refactor tests (#33021) 2024-12-29 01:05:56 +00:00
pull_status_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
pull_update_test.go Add reviewers selection to new pull request (#32403) 2024-11-09 04:48:31 +00:00
README_ZH.md add {{TEST_MINIO_ENDPOINT}} for local testing "with/without" docker + fix pgsql testing doc (#32105) 2024-10-03 01:00:56 +00:00
README.md Improve testing and try to fix MySQL hanging (#32515) 2024-11-15 23:45:07 +08:00
release_test.go Validate that the tag doesn't exist when creating a tag via the web (#33241) 2025-01-14 09:27:35 +08:00
rename_branch_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
repo_activity_test.go Fix wrong display of recently pushed notification (#25812) 2024-05-21 17:00:35 +00:00
repo_archive_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
repo_branch_test.go Improve testing and try to fix MySQL hanging (#32515) 2024-11-15 23:45:07 +08:00
repo_commits_search_test.go Integration Test for Commit Search containing Square Brackets (#28751) 2024-01-11 11:04:45 +08:00
repo_commits_test.go De-emphasize signed commits (#31160) 2024-12-28 04:18:30 +08:00
repo_fork_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
repo_generate_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
repo_merge_upstream_test.go Fix sync fork for consistency (#33147) 2025-01-10 05:29:55 +00:00
repo_mergecommit_revert_test.go Run go generate and go vet on all packages (#30529) 2024-04-17 09:40:35 +00:00
repo_migrate_test.go
repo_search_test.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +00:00
repo_tag_test.go Move some errors to their own sub packages (#32880) 2024-12-20 18:05:29 +00:00
repo_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
repo_topic_test.go Refactor topic Find functions and add more tests for pagination (#30127) 2024-03-29 11:38:16 +08:00
repo_watch_test.go Replace 'userxx' with 'orgxx' in all test files when the user type is org (#27052) 2023-09-14 02:59:53 +00:00
repo_webhook_test.go Fix incorrect menu/link on webhook edit page (#29709) 2024-03-14 01:37:15 +00:00
repofiles_change_test.go Clarify path param naming (#32969) 2024-12-24 13:47:45 +00:00
session_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
setting_test.go Introduce flex-list & flex-item elements for Gitea UI (#25790) 2023-08-01 00:13:42 +02:00
signin_test.go Refactor tests (#33021) 2024-12-29 01:05:56 +00:00
signout_test.go Use JSON response for "user/logout" (#25522) 2023-06-26 21:36:10 +02:00
signup_test.go Support for email addresses containing uppercase characters when activating user account (#32998) 2024-12-27 19:16:23 +08:00
ssh_key_test.go Redesign Scoped Access Tokens (#24767) 2023-06-04 20:57:16 +02:00
timetracking_test.go Issue time estimate, meaningful time tracking (#23113) 2024-12-05 13:07:53 +00:00
user_avatar_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00
user_settings_test.go Validate OAuth Redirect URIs (#32643) 2024-11-28 10:50:27 +08:00
user_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
version_test.go
view_test.go
webfinger_test.go Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
wiki_test.go Make wiki pages visit fast (#32732) 2024-12-06 07:39:50 +00:00
xss_test.go Refactor CSRF token (#32216) 2024-10-10 03:48:21 +00:00

Integration tests

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

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

Make sure to perform a clean build before running tests:

make clean build

Run tests via local act_runner

Run all jobs

act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest

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

Run single job

act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest -j <job_name>

You can list all job names via:

act_runner exec -W ./.github/workflows/pull-db-tests.yml --event=pull_request --default-actions-url="https://github.com" -i catthehacker/ubuntu:runner-latest -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 #(just ctrl-c to stop db and clean the container)
docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --rm --name elasticsearch elasticsearch:7.6.0 #(in a second terminal, just ctrl-c to stop db and clean the container)

Start tests based on the database container

TEST_MYSQL_HOST=localhost:3306 TEST_MYSQL_DBNAME=test 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_USER=postgres" -e "POSTGRES_PASSWORD=postgres" -p 5432:5432 --rm --name pgsql postgres:latest #(just ctrl-c to stop db and clean the container)

Setup minio inside docker

docker run --rm -p 9000:9000 -e MINIO_ROOT_USER=123456 -e MINIO_ROOT_PASSWORD=12345678 --name minio bitnami/minio:2023.8.31

Start tests based on the database container

TEST_MINIO_ENDPOINT=localhost:9000 TEST_PGSQL_HOST=localhost:5432 TEST_PGSQL_DBNAME=postgres TEST_PGSQL_USERNAME=postgres TEST_PGSQL_PASSWORD=postgres make test-pgsql

Run mssql integration tests

Setup a mssql database inside docker

docker run -e "ACCEPT_EULA=Y" -e "MSSQL_PID=Standard" -e "SA_PASSWORD=MwantsaSecurePassword1" -p 1433:1433 --rm --name mssql microsoft/mssql-server-linux:latest #(just ctrl-c to stop db and clean the container)

Start tests based on the database container

TEST_MSSQL_HOST=localhost:1433 TEST_MSSQL_DBNAME=gitea_test TEST_MSSQL_USERNAME=sa TEST_MSSQL_PASSWORD=MwantsaSecurePassword1 make test-mssql

Running individual tests

Example command to run GPG test:

For SQLite:

make test-sqlite#GPG

For other databases(replace mssql to mysql, or pgsql):

TEST_MSSQL_HOST=localhost:1433 TEST_MSSQL_DBNAME=test TEST_MSSQL_USERNAME=sa TEST_MSSQL_PASSWORD=MwantsaSecurePassword1 make test-mssql#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 set the following environment variables:

GITEA_TEST_SLOW_RUN="10s" GITEA_TEST_SLOW_FLUSH="1s" make test-sqlite