Commit graph

20001 commits

Author SHA1 Message Date
erik fa5806cecf Use StatusSeeOther 2024-05-28 15:37:41 +02:00
erik 75c93e5319 Update NewRepositoryID with case for following repo 2024-05-28 12:54:49 +02:00
erik 9c9333868c Add todo
We currently validate RepositoryID uris to be a valid api address from our own server.
2024-05-28 12:38:27 +02:00
erik 69e79e50c2 Lift test env prep one up 2024-05-28 12:36:34 +02:00
Michael Jerger 72f2f35bd8 wip integration test 2024-05-28 08:57:03 +02:00
Michael Jerger a133b6de31 rename 2024-05-28 08:53:19 +02:00
Michael Jerger 3d1586d9cb translation hast to be done in translation tool 2024-05-27 08:20:43 +02:00
Michael Jerger 108971ddc8 add migration 2024-05-27 08:18:09 +02:00
Michael Jerger 6ef691b8d7 lint 2024-05-24 16:34:11 +02:00
Michael Jerger a3c90e3085 field no longer in use 2024-05-24 13:27:37 +02:00
Michael Jerger 5ace6816ac remove todo - no change required 2024-05-24 08:50:54 +02:00
Michael Jerger 64be24ed0c Format & remove old todos 2024-05-24 08:49:08 +02:00
Michael Jerger 30e2582f24 mv doc to doc project 2024-05-24 08:24:54 +02:00
Michael Jerger 2e72b5e05b Merge branch 'forgejo' into forgejo-federated-star 2024-05-24 07:25:20 +02:00
Earl Warren eea841d25d Merge pull request 'Update dependency @playwright/test to v1.44.1' (#3879) from renovate/playwright-monorepo into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3879
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-24 00:43:31 +00:00
Michael Jerger b01f3bb2a1 federated-star: finalize receive activity (#3871)
PR will finalize the ability to receive a federated star from a remote instance.

This is part of: https://codeberg.org/forgejo/forgejo/pulls/1680

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3871
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Michael Jerger <michael.jerger@meissa-gmbh.de>
Co-committed-by: Michael Jerger <michael.jerger@meissa-gmbh.de>
2024-05-24 00:25:57 +00:00
Earl Warren 32222d7d0a Merge pull request '[BUG] Fix SourceHut Builds webhook with triggers field' (#3864) from oliverpool/forgejo:sourcehut_trigger into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3864
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-24 00:16:22 +00:00
Renovate Bot 2d245351e5 Update dependency @playwright/test to v1.44.1 2024-05-24 00:04:17 +00:00
Earl Warren 8cfe353061 Merge pull request 'Update module github.com/jhillyerd/enmime to v1.2.0' (#3791) from renovate/github.com-jhillyerd-enmime-1.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3791
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-23 10:21:31 +00:00
Earl Warren 3056a2ea2e Merge pull request 'Update ghcr.io/visualon/renovate Docker tag to v37.374.3' (#3775) from renovate/ghcr.io-visualon-renovate-37.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3775
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-05-23 09:50:14 +00:00
Earl Warren ba6d5ae2af
chore(release-notes): enmime upgrade to v1.2.0
Refs: https://codeberg.org/forgejo/forgejo/pulls/3791
2024-05-23 11:44:26 +02:00
Earl Warren adba05bac5 Merge pull request 'Update dependency swagger-ui-dist to v5.17.12' (#3806) from renovate/swagger-ui-dist-5.17.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3806
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-23 09:35:41 +00:00
Earl Warren c66c4d8fd5 Merge pull request 'Update module github.com/markbates/goth to v1.80.0' (#3808) from renovate/github.com-markbates-goth-1.x into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3808
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-23 09:26:08 +00:00
Earl Warren f84235166e
chore(release-notes): goth upgrade to v1.80.0
Refs: https://codeberg.org/forgejo/forgejo/pulls/3808
2024-05-23 10:55:32 +02:00
Renovate Bot f5157085aa Update ghcr.io/visualon/renovate Docker tag to v37.374.3 2024-05-22 20:06:04 +00:00
Michael Jerger 4c87b0b3ee Merge branch 'forgejo' into forgejo-federated-star 2024-05-22 18:23:21 +02:00
Renovate Bot 0376b5087d Update dependency swagger-ui-dist to v5.17.12 2024-05-22 16:08:46 +00:00
Earl Warren 9c7ff70072 Merge pull request '[skip ci] docs(release-notes): 7.0.3 (take 2)' (#3868) from earl-warren/forgejo:wip-release-notes-v7.0 into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3868
Reviewed-by: oliverpool <oliverpool@noreply.codeberg.org>
2024-05-22 15:14:26 +00:00
Earl Warren b2378d6d5f
[skip ci] docs(release-notes): 7.0.3 (take 2)
This commit was reverted because it introduces a regression.

Refs: https://codeberg.org/forgejo/forgejo/pulls/3867
2024-05-22 16:48:19 +02:00
Earl Warren d8e21e673d Merge pull request 'Creation of federated user' (#3792) from meissa/forgejo:forgejo-federated-pr3 into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3792
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-22 11:11:42 +00:00
oliverpool 0e479f3502 add release-notes 2024-05-22 12:59:41 +02:00
oliverpool 1f6f909b2e refactor: sourcehut_builds ignore unused fields 2024-05-22 12:56:51 +02:00
oliverpool c9f38e2813 fix: sourcehut_builds preserve unused fields
Fix #3820
2024-05-22 12:56:51 +02:00
oliverpool 7b47cb43c1 test: sourcehut_builds trigger 2024-05-22 12:56:51 +02:00
Earl Warren 0dd00a6023 Merge pull request '[skip ci] docs(release-notes): 7.0.3' (#3858) from earl-warren/forgejo:wip-release-notes-v7.0 into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3858
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
2024-05-22 10:38:39 +00:00
Clemens 1c24e2dec6 Removed test case from integration test which will be added in a later pr 2024-05-22 12:37:52 +02:00
Earl Warren ce0921d0c5
[skip ci] docs(release-notes): 7.0.3 2024-05-22 12:34:50 +02:00
Earl Warren 780f176fd9 Merge pull request 'fix(build): generate does not need gomock' (#3862) from earl-warren/forgejo:wip-source-tarbal into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3862
Reviewed-by: twenty-panda <twenty-panda@noreply.codeberg.org>
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-05-22 06:17:32 +00:00
Earl Warren f145617b0f
fix(build): generate does not need gomock
* the file generated to by gomock is already in the sources
* add generate-gomock to help with rebuilding the files

Fixes: https://codeberg.org/forgejo/forgejo/issues/3861
2024-05-22 07:41:57 +02:00
Earl Warren 7bd8443739 Merge pull request 'test: even more sha256 repositories tests' (#3856) from oliverpool/forgejo:push_create_sha256 into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3856
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-21 21:50:37 +00:00
Earl Warren 7ce8090346 Merge pull request 'tests(services/mailer): add tooling and coverage for issues/default.tmpl' (#3816) from earl-warren/forgejo:wip-test-mail into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3816
Reviewed-by: Otto <otto@codeberg.org>
2024-05-21 21:46:58 +00:00
Earl Warren cf391f937a Merge pull request 'refactor: redis queue backend test cleanup' (#3850) from efertone/forgejo:refactor-redis-queue-test into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3850
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-21 20:40:00 +00:00
Renovate Bot 1602f60e53 Update module github.com/markbates/goth to v1.80.0 2024-05-21 20:07:52 +00:00
oliverpool c19b1cc76d test-sha256: skip push-create
See #3783 why it is hard to support
2024-05-21 21:24:06 +02:00
oliverpool 7e1f7f6a50 test-sha256: GitPushCreate 2024-05-21 21:24:06 +02:00
Michael Jerger 735d9629cf add more integration testcases 2024-05-21 18:49:31 +02:00
Michael Jerger a1acc46c88 make mocked user consistent 2024-05-21 18:46:48 +02:00
Victoria Nadasdi 87e2454858
lint: fix import order issue
Signed-off-by: Victoria Nadasdi <victoria@efertone.me>
2024-05-21 18:02:37 +02:00
Victoria Nadasdi e195b47ffc
go mod tidy
Signed-off-by: Victoria Nadasdi <victoria@efertone.me>
2024-05-21 18:02:37 +02:00
Victoria Nadasdi 54acfa8880
refactor: redis queue backend test cleanup
Summary:
- Move existing test under a `testify` Suite as `baseRedisWithServerTestSuite`
  - Those tests require real redis server.
- Add `go.uber.org/mock/mockgen@latest` as dependency
  - as a tool (Makefile).
  - in the `go.mod` file.
- Mock redis client lives under a `mock` directory under the queue module.
  - That mock module has an extra hand-written mock in-memory redis-like struct.
- Add tests using the mock redis client.
- Changed the logic around queue provider creation.
  - Now the `getNewQueue` returns a Queue provider directly, not an init
    function to create it.

The whole Queue module is close to impossible to test properly because
everything is private, everything goes through a struct route. Because
of that, we can't test for example what keys are used for given queue.

To overcome this, as a first step I removed one step from that hard
route by allowing custom calls to create new queue provider. To achieve
this, I moved the creation logic into the `getNewQueue` (previously it
was `getNewQueueFn`). That changes nothing on that side, everything goes
as before, except the `newXXX` call happens directly in that function
and not outside that.

That made it possible to add extra provider specific parameters to those
function (`newXXX`). For example a client on redis. Calling it through
the `getNewQueue` function, it gets `nil`.

- If the provided client is not `nil`, it will use that instead of the
connection string.
- If it's `nil` (default behaviour), it creates a new redis client as it
  did before, no changes to that.

The rest of the provider code is unchanged. All these changes were
required to make it possible to generate mock clients for providers and
use them.

For the tests, the existing two test cases are good with redis server,
and they need some extra helpers, for example to start a new redis
server if required, or waiting on a redis server to be ready to use.
These helpers are only required for test cases using real redis server.

For better isolation, moved existing test under a testify Suite, and
moved them into a new test file called `base_redis_with_server_test.go`
because, well they test the code with server. These tests do exactly the
same as before, calling the same sub-tests the same way as before, the
only change is the structure of the test (remove repetition, scope
server related helper functions).

Finally, we can create unit tests without redis server. The main focus of
this group of tests are higher level overview of operations. With the
mock redis client we can set up expectations about used queue names,
received values, return value to simulate faulty state.

These new unit test functions don't test all functionality, at least
it's not aimed for it now. It's more about the possibility of doing that
and add extra tests around parts we couldn't test before, for example
key.

What extra features can test the new unit test group:
- What is the received key for given queue? For example using `prefix`,
  or if all the `SXxx` calls are expected to use `queue_unique` if
  it's a unique queue.
- If it's not a unique queue, no `SXxx` functions are called, because
  those sets are used only to check if a value is unique or not.
- `HasItem` return `false` always if it's a non-unique queue.
- All functions are called exactly `N` times, and we don't have any
  unexpected calls to redis from the code.

Signed-off-by: Victoria Nadasdi <victoria@efertone.me>
2024-05-21 18:02:33 +02:00