summaryrefslogtreecommitdiff
path: root/internal/api/client/admin
diff options
context:
space:
mode:
authorLibravatar Vyr Cossont <VyrCossont@users.noreply.github.com>2024-03-06 09:05:45 -0800
committerLibravatar GitHub <noreply@github.com>2024-03-06 18:05:45 +0100
commitfc3741365c27f1d703e8a736af95b95ff811cc45 (patch)
tree929f1d5e20d1469d63a3dfe81d38d89f9a073c5a /internal/api/client/admin
parent[chore/bugfix] Little DB fixes (#2726) (diff)
downloadgotosocial-fc3741365c27f1d703e8a736af95b95ff811cc45.tar.xz
[bugfix] Fix Swagger spec and add test script (#2698)
* Add Swagger spec test script * Fix Swagger spec errors not related to statuses with polls * Add API tests that post a status with a poll * Fix creating a status with a poll from form params * Fix Swagger spec errors related to statuses with polls (this is the last error) * Fix Swagger spec warnings not related to unused definitions * Suppress a duplicate list update params definition that was somehow causing wrong param names * Add Swagger test to CI - updates Drone config - vendorizes go-swagger - fixes a file extension issue that caused the test script to generate JSON instead of YAML with the vendorized version * Put `Sample: ` on its own line everywhere * Remove unused id param from emojiCategoriesGet * Add 5 more pairs of profile fields to account update API Swagger * Remove Swagger prefix from dummy fields It makes the generated code look weird * Manually annotate params for statusCreate operation * Fix all remaining Swagger spec warnings - Change some models into operation parameters - Ignore models that already correspond to manually documented operation parameters but can't be trivially changed (those with file fields) * Documented that creating a status with scheduled_at isn't implemented yet * sign drone.yml * Fix filter API Swagger errors * fixup! Fix filter API Swagger errors --------- Co-authored-by: tobi <tobi.smethurst@protonmail.com>
Diffstat (limited to 'internal/api/client/admin')
-rw-r--r--internal/api/client/admin/domainkeysexpire.go5
-rw-r--r--internal/api/client/admin/emojicategoriesget.go10
-rw-r--r--internal/api/client/admin/emojicreate.go3
-rw-r--r--internal/api/client/admin/emojiupdate.go7
-rw-r--r--internal/api/client/admin/reportresolve.go3
-rw-r--r--internal/api/client/admin/rulecreate.go9
-rw-r--r--internal/api/client/admin/ruledelete.go6
-rw-r--r--internal/api/client/admin/rulesget.go2
-rw-r--r--internal/api/client/admin/ruleupdate.go18
9 files changed, 19 insertions, 44 deletions
diff --git a/internal/api/client/admin/domainkeysexpire.go b/internal/api/client/admin/domainkeysexpire.go
index 10a7597a4..4990d879f 100644
--- a/internal/api/client/admin/domainkeysexpire.go
+++ b/internal/api/client/admin/domainkeysexpire.go
@@ -61,8 +61,9 @@ import (
// -
// name: domain
// in: formData
-// description: Domain to expire keys for.
-// example: example.org
+// description: |-
+// Domain to expire keys for.
+// Sample: example.org
// type: string
//
// security:
diff --git a/internal/api/client/admin/emojicategoriesget.go b/internal/api/client/admin/emojicategoriesget.go
index 2c097c6df..51eb8fee4 100644
--- a/internal/api/client/admin/emojicategoriesget.go
+++ b/internal/api/client/admin/emojicategoriesget.go
@@ -38,21 +38,13 @@ import (
// produces:
// - application/json
//
-// parameters:
-// -
-// name: id
-// type: string
-// description: The id of the emoji.
-// in: path
-// required: true
-//
// responses:
// '200':
// description: Array of existing emoji categories.
// schema:
// type: array
// items:
-// "$ref": "#/definitions/adminEmojiCategory"
+// "$ref": "#/definitions/emojiCategory"
// '400':
// description: bad request
// '401':
diff --git a/internal/api/client/admin/emojicreate.go b/internal/api/client/admin/emojicreate.go
index 5d024f039..9086b27e0 100644
--- a/internal/api/client/admin/emojicreate.go
+++ b/internal/api/client/admin/emojicreate.go
@@ -67,10 +67,11 @@ import (
// name: category
// in: formData
// description: >-
-// Category in which to place the new emoji. 64 characters or less.
+// Category in which to place the new emoji.
// If left blank, emoji will be uncategorized. If a category with the
// given name doesn't exist yet, it will be created.
// type: string
+// maximumLength: 64
// required: false
//
// security:
diff --git a/internal/api/client/admin/emojiupdate.go b/internal/api/client/admin/emojiupdate.go
index f531f36f9..ffde2d597 100644
--- a/internal/api/client/admin/emojiupdate.go
+++ b/internal/api/client/admin/emojiupdate.go
@@ -73,6 +73,10 @@ import (
// For REMOTE emojis, `copy` or `disable` are supported.
// For LOCAL emojis, only `modify` is supported.
// type: string
+// enum:
+// - copy
+// - disable
+// - modify
// required: true
// -
// name: shortcode
@@ -94,9 +98,10 @@ import (
// name: category
// in: formData
// description: >-
-// Category in which to place the emoji. 64 characters or less.
+// Category in which to place the emoji.
// If a category with the given name doesn't exist yet, it will be created.
// type: string
+// maximumLength: 64
//
// security:
// - OAuth2 Bearer:
diff --git a/internal/api/client/admin/reportresolve.go b/internal/api/client/admin/reportresolve.go
index 9c1c32afe..2ad979b0b 100644
--- a/internal/api/client/admin/reportresolve.go
+++ b/internal/api/client/admin/reportresolve.go
@@ -60,8 +60,9 @@ import (
// Useful for providing an explanation about what action was taken (if any)
// before the report was marked as resolved. This will be visible to the user
// that created the report!
+//
+// Sample: The reported account was suspended.
// type: string
-// example: The reported account was suspended.
//
// security:
// - OAuth2 Bearer:
diff --git a/internal/api/client/admin/rulecreate.go b/internal/api/client/admin/rulecreate.go
index e838bff1e..155c69db0 100644
--- a/internal/api/client/admin/rulecreate.go
+++ b/internal/api/client/admin/rulecreate.go
@@ -43,15 +43,6 @@ import (
// produces:
// - application/json
//
-// parameters:
-// -
-// name: text
-// in: formData
-// description: >-
-// Text body for the instance rule, plaintext.
-// type: string
-// required: true
-//
// security:
// - OAuth2 Bearer:
// - admin
diff --git a/internal/api/client/admin/ruledelete.go b/internal/api/client/admin/ruledelete.go
index dfa84615f..834149978 100644
--- a/internal/api/client/admin/ruledelete.go
+++ b/internal/api/client/admin/ruledelete.go
@@ -28,7 +28,7 @@ import (
"github.com/superseriousbusiness/gotosocial/internal/oauth"
)
-// RuleDELETEHandler swagger:operation DELETE /api/v1/admin/instance/rules{id} ruleDelete
+// RuleDELETEHandler swagger:operation DELETE /api/v1/admin/instance/rules/{id} ruleDelete
//
// Delete an existing instance rule.
//
@@ -45,10 +45,10 @@ import (
// parameters:
// -
// name: id
-// in: formData
+// in: path
// description: >-
// The id of the rule to delete.
-// type: path
+// type: string
// required: true
//
// security:
diff --git a/internal/api/client/admin/rulesget.go b/internal/api/client/admin/rulesget.go
index 2cc9e0158..e00ff1c07 100644
--- a/internal/api/client/admin/rulesget.go
+++ b/internal/api/client/admin/rulesget.go
@@ -27,7 +27,7 @@ import (
"github.com/superseriousbusiness/gotosocial/internal/oauth"
)
-// rulesGETHandler swagger:operation GET /api/v1/admin/rules rules
+// RulesGETHandler swagger:operation GET /api/v1/admin/rules adminsRuleGet
//
// View instance rules, with IDs.
//
diff --git a/internal/api/client/admin/ruleupdate.go b/internal/api/client/admin/ruleupdate.go
index eafa3af34..2ba31485e 100644
--- a/internal/api/client/admin/ruleupdate.go
+++ b/internal/api/client/admin/ruleupdate.go
@@ -29,7 +29,7 @@ import (
"github.com/superseriousbusiness/gotosocial/internal/oauth"
)
-// RulePATCHHandler swagger:operation PATCH /api/v1/admin/instance/rules{id} ruleUpdate
+// RulePATCHHandler swagger:operation PATCH /api/v1/admin/instance/rules/{id} ruleUpdate
//
// Update an existing instance rule.
//
@@ -43,22 +43,6 @@ import (
// produces:
// - application/json
//
-// parameters:
-// -
-// name: id
-// in: formData
-// description: >-
-// The id of the rule to update.
-// type: path
-// required: true
-// -
-// name: text
-// in: formData
-// description: >-
-// Text body for the updated instance rule, plaintext.
-// type: string
-// required: true
-//
// security:
// - OAuth2 Bearer:
// - admin