fix: use int32/int64 formats for integer types

Fixed integer type mapping in OpenAPI 2.0: replaced the invalid integer format with int32/int64 and added the toSwaggerFormat function to map PostgreSQL types to valid OpenAPI 2.0 formats:

smallint -> int32
integer -> int32
bigint -> int64
This commit is contained in:
Artur Bento de Carvalho
2026-04-03 16:36:55 -05:00
committed by Steve Chavez
parent 250747aadc
commit 0d4d1dca51
4 changed files with 30 additions and 20 deletions
+12 -12
View File
@@ -157,7 +157,7 @@ spec = describe "OpenAPI" $ do
"properties": {
"id": {
"description": "child_entities id comment\n\nNote:\nThis is a Primary Key.<pk/>",
"format": "integer",
"format": "int32",
"type": "integer"
},
"name": {
@@ -167,7 +167,7 @@ spec = describe "OpenAPI" $ do
},
"parent_id": {
"description": "Note:\nThis is a Foreign Key to `entities.id`.<fk table='entities' column='id'/>",
"format": "integer",
"format": "int32",
"type": "integer"
}
},
@@ -192,7 +192,7 @@ spec = describe "OpenAPI" $ do
"properties": {
"id": {
"description": "child_entities_view id comment\n\nNote:\nThis is a Primary Key.<pk/>",
"format": "integer",
"format": "int32",
"type": "integer"
},
"name": {
@@ -202,7 +202,7 @@ spec = describe "OpenAPI" $ do
},
"parent_id": {
"description": "Note:\nThis is a Foreign Key to `entities.id`.<fk table='entities' column='id'/>",
"format": "integer",
"format": "int32",
"type": "integer"
}
}
@@ -232,7 +232,7 @@ spec = describe "OpenAPI" $ do
referralLink `shouldBe` Just
[aesonQQ|
{
"format": "integer",
"format": "int32",
"type": "integer",
"description": "Note:\nThis is a Foreign Key to `second.id`.<fk table='second' column='id'/>"
}
@@ -337,7 +337,7 @@ spec = describe "OpenAPI" $ do
referralLink `shouldBe` Just
[aesonQQ|
{
"format": "integer",
"format": "int32",
"type": "integer",
"description": "Note:\nThis is a Foreign Key to `pages.link`.<fk table='pages' column='link'/>"
}
@@ -354,7 +354,7 @@ spec = describe "OpenAPI" $ do
referralLink `shouldBe` Just
[aesonQQ|
{
"format": "integer",
"format": "int32",
"type": "integer",
"description": "Note:\nThis is a Foreign Key to `clients.id`.<fk table='clients' column='id'/>"
}
@@ -432,7 +432,7 @@ spec = describe "OpenAPI" $ do
types `shouldBe` Just
[aesonQQ|
{
"format": "smallint",
"format": "int32",
"type": "integer"
}
|]
@@ -447,7 +447,7 @@ spec = describe "OpenAPI" $ do
types `shouldBe` Just
[aesonQQ|
{
"format": "integer",
"format": "int32",
"type": "integer"
}
|]
@@ -462,7 +462,7 @@ spec = describe "OpenAPI" $ do
types `shouldBe` Just
[aesonQQ|
{
"format": "bigint",
"format": "int64",
"type": "integer"
}
|]
@@ -850,7 +850,7 @@ spec = describe "OpenAPI" $ do
"type": "string"
},
{
"format": "integer",
"format": "int32",
"in": "query",
"name": "integer",
"required": false,
@@ -992,7 +992,7 @@ spec = describe "OpenAPI" $ do
"items": {}
},
"integer": {
"format": "integer",
"format": "int32",
"type": "integer"
},
"json": {
@@ -281,7 +281,7 @@ spec =
"properties" : {
"id" : {
"description" : "Note:\nThis is a Primary Key.<pk/>",
"format" : "integer",
"format" : "int32",
"type" : "integer"
},
"name" : {
@@ -310,7 +310,7 @@ spec =
"properties" : {
"id" : {
"description" : "Note:\nThis is a Primary Key.<pk/>",
"format" : "integer",
"format" : "int32",
"type" : "integer"
},
"name" : {
@@ -339,7 +339,7 @@ spec =
"properties" : {
"id" : {
"description" : "Note:\nThis is a Primary Key.<pk/>",
"format" : "integer",
"format" : "int32",
"type" : "integer"
},
"name" : {
@@ -368,7 +368,7 @@ spec =
"properties" : {
"id" : {
"description" : "Note:\nThis is a Primary Key.<pk/>",
"format" : "integer",
"format" : "int32",
"type" : "integer"
},
"another_value" : {