in code/go/internal/validator/folder_item_spec.go [40:62]
func validateFile(spec spectypes.ItemSpec, fsys fs.FS, itemPath string) specerrors.ValidationErrors {
err := validateMaxSize(fsys, itemPath, spec)
if err != nil {
return specerrors.ValidationErrors{specerrors.NewStructuredError(err, specerrors.UnassignedCode)}
}
if mediaType := spec.ContentMediaType(); mediaType != nil {
err := validateContentType(fsys, itemPath, *mediaType)
if err != nil {
return specerrors.ValidationErrors{specerrors.NewStructuredError(err, specerrors.UnassignedCode)}
}
err = validateContentTypeSize(fsys, itemPath, *mediaType, spec)
if err != nil {
return specerrors.ValidationErrors{specerrors.NewStructuredError(err, specerrors.UnassignedCode)}
}
}
errs := spec.ValidateSchema(fsys, itemPath)
if len(errs) > 0 {
return errs
}
return nil
}