diff options
| author | 2025-06-09 16:26:49 +0200 | |
|---|---|---|
| committer | 2025-06-09 16:26:49 +0200 | |
| commit | 3f1c3c0dacafce8a4421e5d2570adf2084f29756 (patch) | |
| tree | 474638976076e2780b9d45ba340ee52094e08ede /internal/processing/status/create_test.go | |
| parent | [feature] enable footnote extension for markdown parser (#4251) (diff) | |
| download | gotosocial-3f1c3c0dacafce8a4421e5d2570adf2084f29756.tar.xz | |
[bugfix] return 422 for invalid status visibility (#4252)
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
# Description
closes #4247
## Checklist
Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]`
If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want).
- [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md).
- [ ] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat.
- [x] I/we have not leveraged AI to create the proposed changes.
- [x] I/we have performed a self-review of added code.
- [x] I/we have written code that is legible and maintainable by others.
- [ ] I/we have commented the added code, particularly in hard-to-understand areas.
- [ ] I/we have made any necessary changes to documentation.
- [x] I/we have added tests that cover new code.
- [x] I/we have run tests and they pass locally with the changes.
- [x] I/we have run `go fmt ./...` and `golangci-lint run`.
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4252
Co-authored-by: nicole mikołajczyk <git@mkljczk.pl>
Co-committed-by: nicole mikołajczyk <git@mkljczk.pl>
Diffstat (limited to 'internal/processing/status/create_test.go')
| -rw-r--r-- | internal/processing/status/create_test.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/internal/processing/status/create_test.go b/internal/processing/status/create_test.go index a2adb5f79..82bc801c4 100644 --- a/internal/processing/status/create_test.go +++ b/internal/processing/status/create_test.go @@ -18,6 +18,7 @@ package status_test import ( + "net/http" "testing" apimodel "code.superseriousbusiness.org/gotosocial/internal/api/model" @@ -240,6 +241,31 @@ func (suite *StatusCreateTestSuite) TestProcessNoContentTypeUsesDefault() { suite.Equal(apimodel.StatusContentTypeDefault, apiStatus.ContentType) } +func (suite *StatusCreateTestSuite) TestProcessInvalidVisibility() { + ctx := suite.T().Context() + creatingAccount := suite.testAccounts["local_account_1"] + creatingApplication := suite.testApplications["application_1"] + + statusCreateForm := &apimodel.StatusCreateRequest{ + Status: "my tests content is boring", + SpoilerText: "", + MediaIDs: []string{}, + Poll: nil, + InReplyToID: "", + Sensitive: false, + Visibility: "local", + LocalOnly: util.Ptr(false), + ScheduledAt: nil, + Language: "en", + ContentType: apimodel.StatusContentTypePlain, + } + + apiStatus, errWithCode := suite.status.Create(ctx, creatingAccount, creatingApplication, statusCreateForm) + suite.Nil(apiStatus) + suite.Equal(http.StatusUnprocessableEntity, errWithCode.Code()) + suite.Equal("Unprocessable Entity: processVisibility: invalid visibility", errWithCode.Safe()) +} + func TestStatusCreateTestSuite(t *testing.T) { suite.Run(t, new(StatusCreateTestSuite)) } |
