entc/gen: reject fields without name (#273)

Fixes #272
This commit is contained in:
Ariel Mashraki
2020-01-06 21:30:25 +02:00
committed by GitHub
parent b54007ef56
commit 9cb0eb7467
2 changed files with 10 additions and 0 deletions

View File

@@ -141,6 +141,8 @@ func NewType(c *Config, schema *load.Schema) (*Type, error) {
}
for _, f := range schema.Fields {
switch {
case f.Name == "":
return nil, fmt.Errorf("field name cannot be empty")
case f.Info == nil || !f.Info.Valid():
return nil, fmt.Errorf("invalid type for field %s", f.Name)
case f.Nillable && !f.Optional:

View File

@@ -61,6 +61,14 @@ func TestType(t *testing.T) {
},
})
require.Error(err, "empty value for enums")
_, err = NewType(&Config{Package: "entc/gen"}, &load.Schema{
Name: "T",
Fields: []*load.Field{
{Name: "", Info: &field.TypeInfo{Type: field.TypeInt}},
},
})
require.Error(err, "empty field name")
}
func TestType_Label(t *testing.T) {