Files
threshold/api/internal/genapi/input.go
T
Todd Knight 2c3fbe3024 Invalid Argument errors provide per field details. (#110)
* Invalid Argument errors now return a per field error message.

* Creating an API error struct.

* SDK uses field error details proto.

* Adding tests specifically for handler helper error messages resulting in expected API output.

* Inlining the error checks into the table driven tests.  Use protocmp for assertions to make printing out diffs easier to parse.

* Aggregate the invalid argument fields detected to be wrong.

* Make the returned order of fields deterministic in the error details..

* Fixing formatting issue in errors_test.go.

* Test to confirm unimplemented results in a 405 and not 404.
2020-06-09 10:51:50 -07:00

129 lines
2.7 KiB
Go

package main
import "os"
type structInfo struct {
inFile string
inName string
outFile string
outName string
outPkg string
structFields string
parentName string
detailName string
templateType templateType
}
var inputStructs = []*structInfo{
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/error.pb.go",
"Error",
os.Getenv("GEN_BASEPATH") + "/api/error.gen.go",
"Error",
"api",
"",
"",
"",
templateTypeResource,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/error.pb.go",
"ErrorDetails",
os.Getenv("GEN_BASEPATH") + "/api/error_details.gen.go",
"ErrorDetails",
"api",
"",
"",
"",
templateTypeResource,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/error.pb.go",
"FieldError",
os.Getenv("GEN_BASEPATH") + "/api/field_error.gen.go",
"FieldError",
"api",
"",
"",
"",
templateTypeResource,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/resources/hosts/host.pb.go",
"Host",
os.Getenv("GEN_BASEPATH") + "/api/hosts/host.gen.go",
"Host",
"hosts",
"",
"",
"",
templateTypeResource,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/resources/hosts/host_set.pb.go",
"HostSet",
os.Getenv("GEN_BASEPATH") + "/api/hosts/host_set.gen.go",
"HostSet",
"hosts",
"",
"",
"",
templateTypeResource,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/resources/hosts/host_catalog.pb.go",
"HostCatalog",
os.Getenv("GEN_BASEPATH") + "/api/hosts/host_catalog.gen.go",
"HostCatalog",
"hosts",
"",
"",
"",
templateTypeResource,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/resources/scopes/organization.pb.go",
"Organization",
os.Getenv("GEN_BASEPATH") + "/api/scopes/organization.gen.go",
"Organization",
"scopes",
"",
"",
"",
templateTypeResource,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/resources/scopes/project.pb.go",
"Project",
os.Getenv("GEN_BASEPATH") + "/api/scopes/project.gen.go",
"Project",
"scopes",
"",
"",
"",
templateTypeResource,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/resources/hosts/host_catalog.pb.go",
"StaticHostCatalogDetails",
os.Getenv("GEN_BASEPATH") + "/api/hosts/static_host_catalog.gen.go",
"StaticHostCatalogDetails",
"hosts",
"",
"HostCatalog",
"StaticHostCatalog",
templateTypeDetail,
},
{
os.Getenv("GEN_BASEPATH") + "/internal/gen/controller/api/resources/hosts/host_catalog.pb.go",
"AwsEc2HostCatalogDetails",
os.Getenv("GEN_BASEPATH") + "/api/hosts/awsec2_host_catalog.gen.go",
"AwsEc2HostCatalogDetails",
"hosts",
"",
"HostCatalog",
"AwsEc2HostCatalog",
templateTypeDetail,
},
}