mirror of
1
Fork 0
Commit Graph

21553 Commits

Author SHA1 Message Date
Otto Richter 40551de313 tests(e2e): Refactor various tests
Goals:

- speedup
- less flakiness
- best practices and more use
- documentation

config:
- sync ports in Makefile and playwright config
  (otherwise, some tests fail locally because they assert the full URL including the (wrong) port)
- even more generous timeouts
- limit workers to one again (because I finally understand how
  Playwright works)
- allow nested functions to group them together with the related test

all:

- deprecate waitForLoadState('networkidle')
  - it is discouraged as per https://playwright.dev/docs/api/class-page#page-wait-for-load-state
  - I could not find a usage that seems to require it actually (see
    added documentation in README)
  - adding an exception should be made explicitly
  - it does not do what you might expect anyway in most cases
- only log in when necessary

webauthn:

- verify that login is possible after disabling key
- otherwise, the cleanup was not necessary after the previous refactor to create a fresh user each

issue-sidebar / WIP toggle:

- split into smaller chunks
- restore original state first
- add missed assertion to fix race condition (not waiting
  before state was reached)
- explicitly toggle the state to detect mismatch earlier

issue-sidebar / labels:

- restore original state first
- better waiting for background request
2024-11-13 13:15:37 +01:00
Otto a39f726643 Merge pull request 'chore(lint): Ignore playwright reports for linting' (#5928) from fnetx/nolint into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5928
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-11-12 20:10:19 +00:00
Otto Richter 2e9a8c4fc0 chore(lint): Ignore playwright reports for linting
Was part of c9e402afdc but got dropped from Makefile in 8dc72589ca
There are no JavaScript files in e2e left, so apply some rule to TypeScript only
2024-11-12 20:36:26 +01:00
Gusted fae9cbc8e6 Merge pull request 'Update dependency postcss to v8.4.49 (forgejo)' (#5921) from renovate/forgejo-postcss into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5921
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-11-12 16:21:16 +00:00
Otto d248d5dc92 Merge pull request 'chore(renovate): always set the test/not-needed label' (#5923) from earl-warren/forgejo:wip-renovate-test-present into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5923
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
Reviewed-by: Otto <otto@codeberg.org>
2024-11-12 15:16:19 +00:00
Earl Warren 164044c070 Merge pull request 'fix(ci): synchronize updates the commit status asynchronously' (#5924) from earl-warren/forgejo:wip-test-commit into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5924
Reviewed-by: Otto <otto@codeberg.org>
2024-11-12 11:52:14 +00:00
Earl Warren dd6ea5f3c8
chore(renovate): always set the test/not-needed label
Under the assumption that all dependencies have at least some test
coverage. It may not be always true but it is generally true. Ideally
there would be an inventory, a checklist of dependencies that miss
test coverage, but that does not exist.
2024-11-12 12:48:35 +01:00
Earl Warren 983aed4268
fix(ci): synchronize updates the commit status asynchronously
When a new commit is pushed to an existing pull request, the update of
the commit status will happen asynchronously, via the git hook.

   --- FAIL: TestPullRequestCommitStatus/synchronize (2.14s)
        actions_trigger_test.go:331:
            	Error Trace:	/workspace/forgejo/forgejo/tests/integration/actions_trigger_test.go:331
            	Error:      	Should be true
            	Test:       	TestPullRequestCommitStatus/synchronize
2024-11-12 08:13:33 +01:00
Renovate Bot 520a7bca93 Update dependency happy-dom to v15.11.1 (forgejo) (#5920)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-11-12 05:57:01 +00:00
Renovate Bot 8f6d20c1a3 Update dependency postcss to v8.4.49 2024-11-12 02:03:17 +00:00
Otto 1b3497c9c4 Merge pull request 'refactor: Migrate playwright to typescript' (#5734) from anbraten/forgejo:ts-test into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5734
Reviewed-by: Otto <otto@codeberg.org>
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-11-11 16:58:29 +00:00
Otto a2ef74902f Merge pull request 'chore(e2e): Update global patterns' (#5916) from fnetx/e2e-patterns into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5916
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-11-11 16:49:03 +00:00
Otto Richter 7db3781abf chore(e2e): Update global patterns
Guard against regressions in template classes (see https://codeberg.org/forgejo/forgejo/pulls/5892 for example)
Fix broken frontend test patterns as per https://codeberg.org/forgejo/forgejo/pulls/5734#issuecomment-2406914
2024-11-11 15:23:33 +01:00
Otto 9e929bd709 Merge branch 'forgejo' into ts-test 2024-11-11 14:23:11 +00:00
Otto 3531710dc6 Merge pull request 'fix: Proper parsing of date for git commits' (#5892) from gusted/forgejo-port-32409 into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5892
Reviewed-by: Otto <otto@codeberg.org>
2024-11-11 14:22:32 +00:00
Renovate Bot 7f31d892ac Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v1.62.0 (forgejo) (#5911)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-11-11 13:02:01 +00:00
Michael Kriese 6bea2c387d Merge pull request 'test: fix test linting' (#5912) from viceice/test/lint-fix-take1 into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5912
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-11-11 12:21:54 +00:00
Michael Kriese c33cbae7cc
test: fix test linting
See forgejo/forgejo#5911
2024-11-11 12:44:36 +01:00
Michael Kriese 1e7b368ccf Merge pull request 'chore: set recommend vscode settings for golangci-lint' (#5913) from viceice/chore/vscode-lint into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5913
2024-11-11 10:32:49 +00:00
Michael Kriese b4ceadce1c
chore: set recommend vscode settings for golangci-lint 2024-11-11 10:53:47 +01:00
Gusted 49f9bc716a Merge pull request 'fix: Re-add least recently updated as sort order' (#5909) from fnetx/sortoption-regression into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5909
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-11-11 08:46:10 +00:00
Gusted 5f25351d48 Merge pull request 'Update dependency @vitejs/plugin-vue to v5.1.5 (forgejo)' (#5910) from renovate/forgejo-vitejs-plugin-vue-5.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5910
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-11-11 08:45:48 +00:00
Renovate Bot ff1a084fa3 Update renovate to v39.9.0 (forgejo) (#5907)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-11-11 05:57:44 +00:00
Gusted 2fd6a31f02 Merge pull request 'Update dependency postcss to v8.4.48 (forgejo)' (#5908) from renovate/forgejo-postcss into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5908
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-11-11 04:59:41 +00:00
Renovate Bot ecff6b5850 Update dependency @vitejs/plugin-vue to v5.1.5 2024-11-11 02:03:25 +00:00
Otto Richter c92b4b12c8 fix: Re-add least recently updated as sort order
Regression from https://codeberg.org/forgejo/forgejo/pulls/5819
Integration test added (my first! 🎉)
2024-11-11 01:37:20 +01:00
Renovate Bot 10f8468637 Update dependency postcss to v8.4.48 2024-11-11 00:05:25 +00:00
Otto 50ded8da59 [skip ci] Merge pull request 'document sqlite3 as suggested database' (#5415) from Dirk/forgejo:forgejo into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5415
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-11-10 23:53:35 +00:00
Gusted b1481b8e54 Merge pull request 'chore: improve database docker instructions' (#5906) from gusted/forgejo-db-docker into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5906
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-11-10 22:03:55 +00:00
Gusted 74048f772e
fix: Add created_unix and updated_unix to repo1 fixture 2024-11-10 22:24:12 +01:00
Gusted a1762a6f9b
fix: Proper paring of date for git commits
- Properly parse the date of the git commit and pass that around.
2024-11-10 22:23:28 +01:00
wxiaoguang 7e1aa8a5cd
[PORT] Refactor DateUtils and merge TimeSince (gitea#32409)
Follow #32383 and #32402

---
Conflict resolution: Magic, painful.

(cherry picked from commit b068dbd40ee3b4dc7d18cdcf168f0c24cea234c0)
2024-11-10 22:23:27 +01:00
Earl Warren 8f6dfe29da Merge pull request 'chore: improve test quality' (#5904) from gusted/forgejo-improve-test into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5904
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: Otto <otto@codeberg.org>
2024-11-10 20:35:50 +00:00
Gusted 582ab21bc3
chore: improve test quality
- Merge tests together.
- Remove unecessary usage of `onGiteaRun`.
- Make proper use of `unittest`.
- Make proper use of `test.MockVariable`.
- I have not checked all of the testing files yet.
2024-11-10 20:34:14 +01:00
Gusted f352d6db81
chore: improve database docker instructions
- Do not require minio for mariadb docker.
- Do not require elasticsearch for mysql.
- Fix postgress password parameter.
- Add the multistatement query for mysql (this is not optimal but adding
Makefile code doesn't seem to work really well either)
2024-11-10 19:41:04 +01:00
Gusted 1a8f86cc0b Merge pull request 'chore: simplify CopyDir' (#5903) from gusted/forgejo-simplify-copydir into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5903
Reviewed-by: Otto <otto@codeberg.org>
2024-11-10 17:15:25 +00:00
Gusted cdf3636ae7
chore: simplify CopyDir
Use the standard library function [`os.CopyFS`](https://pkg.go.dev/os#CopyFS) to copy directories.
This also should be slightly faster.
2024-11-10 17:21:57 +01:00
Otto ab36ab57e4 Merge pull request 'enh(issue search): sort by score and term based query for fuzzy search' (#5819) from snematoda/enh-issue-search into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5819
Reviewed-by: Otto <otto@codeberg.org>
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-11-10 12:51:55 +00:00
Earl Warren 2cfd59cb30 Merge pull request 'chore(ci): Enforce test label with CI check' (#5886) from fnetx/test-label-test into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5886
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-11-10 12:21:08 +00:00
Earl Warren 542a9d2529 Merge pull request 'fix(ci): only trigger end-to-end tests when the label is set' (#5896) from earl-warren/forgejo:wip-label-end-to-end into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5896
Reviewed-by: Otto <otto@codeberg.org>
2024-11-10 12:09:46 +00:00
Earl Warren 493175e6fd
fix(ci): only trigger end-to-end tests when the label is set
Use event.label instead of event.pull_request.labels.*.name

Prior to Forgejo v9.0.2 it was not set and that was the only workaround.
2024-11-10 11:44:59 +01:00
Shiny Nematoda b6e6a2c36e test: add for issue indexer sort by score 2024-11-10 07:17:27 +00:00
Shiny Nematoda a265574821 enh(search): improve issue search
- new sort by relevency option for issue search
- rework bleve fuzzy search to consider each term rather than matching the entire phrase
2024-11-10 07:17:27 +00:00
Gusted d51847103d Merge pull request 'Update module golang.org/x/net to v0.31.0 (forgejo)' (#5890) from renovate/forgejo-golang.org-x-net-0.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5890
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-11-10 03:49:16 +00:00
Otto 6712ff6fa2 Merge pull request 'chore: lazy-loaded version of goccy/go-json' (#5888) from gusted/forgejo-better-json into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5888
Reviewed-by: Otto <otto@codeberg.org>
2024-11-10 03:23:34 +00:00
Renovate Bot b462351933 Update module golang.org/x/net to v0.31.0 2024-11-10 02:13:04 +00:00
Otto 888a0c022e Merge pull request 'fix(ui): Details icon in repo settings sidebar' (#5885) from fnetx/repo-settings-sidebar-details-icon into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5885
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-11-10 02:03:20 +00:00
Gusted 11667f07c5
chore: lazy-loaded version of goccy/go-json
- This uses a forked version of https://github.com/goccy/go-json, that
has [this pull request](https://github.com/goccy/go-json/pull/490)
applied. It reduces the heap memory usage by 8MiB (idle heap usage from
startup: 40126.59kB -> 32073.56kB). This should be generally safe to
replace as goccy/go-json doesn't see frequent updates and the other user
of this fork is grafana which is another big Go project.
- The only user of this library is minio, but having a configuration
with minio is not a common setup, AFAIK, so this is essentialy wasted
memory for most Forgejo instances. Having it lazy-loaded solves that
problem.
2024-11-10 02:32:35 +01:00
Otto Richter 2483dbc694 chore(ci): Enforce test label with CI check
Re-add the test after bugfixes have been deployed to Codeberg
2024-11-10 02:16:21 +01:00
Gusted d2ba9806f3 Merge pull request 'Update module golang.org/x/crypto to v0.29.0 (forgejo)' (#5883) from renovate/forgejo-golang.org-x-crypto-0.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5883
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-11-10 00:50:01 +00:00