checker

package
v1.3.21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 4, 2023 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

Package checker finds breaking-changes accoss openapi specifications.

Index

Constants

View Source
const (
	ERR  = 0
	WARN = 1
)
View Source
const (
	XStabilityLevelExtension = "x-stability-level"
	XExtensibleEnumExtension = "x-extensible-enum"
)

Variables

This section is empty.

Functions

func CheckAddedPropertiesDiff

func CheckAddedPropertiesDiff(schemaDiff *diff.SchemaDiff, processor func(propertyPath string, propertyName string, propertyItem *openapi3.Schema, propertyParentDiff *diff.SchemaDiff))

func CheckDeletedPropertiesDiff

func CheckDeletedPropertiesDiff(schemaDiff *diff.SchemaDiff, processor func(propertyPath string, propertyName string, propertyItem *openapi3.Schema, propertyParentDiff *diff.SchemaDiff))

func CheckModifiedPropertiesDiff

func CheckModifiedPropertiesDiff(schemaDiff *diff.SchemaDiff, processor func(propertyPath string, propertyName string, propertyItem *diff.SchemaDiff, propertyParentItem *diff.SchemaDiff))

func ColorizedValue

func ColorizedValue(arg interface{}) string

func IsDecreased

func IsDecreased(from interface{}, to interface{}) bool

func IsDecreasedValue

func IsDecreasedValue(diff *diff.ValueDiff) bool

func IsIncreased

func IsIncreased(from interface{}, to interface{}) bool

func IsIncreasedValue

func IsIncreasedValue(diff *diff.ValueDiff) bool

func IsPipedOutput

func IsPipedOutput() bool

func LoadOpenAPISpecInfo

func LoadOpenAPISpecInfo(location string) (*load.OpenAPISpecInfo, error)

func LoadOpenAPISpecInfoFromFile

func LoadOpenAPISpecInfoFromFile(location string) (*load.OpenAPISpecInfo, error)

LoadOpenAPISpecInfoFromFile loads a LoadOpenAPISpecInfoFromFile from a local file path

func ValidateIncludeChecks added in v1.3.10

func ValidateIncludeChecks(includeChecks utils.StringList) utils.StringList

Types

type BCDiff

type BCDiff struct {
	diff.Diff
}

func (*BCDiff) AddModifiedOperation

func (d *BCDiff) AddModifiedOperation(path string, operation string) *diff.MethodDiff

func (*BCDiff) AddModifiedParameter

func (diffBC *BCDiff) AddModifiedParameter(path string, operation string, paramLocation string, paramName string) *diff.ParameterDiff

func (*BCDiff) AddModifiedPath

func (d *BCDiff) AddModifiedPath(path string) *diff.PathDiff

func (*BCDiff) AddRequestPropertiesDiff

func (diffBC *BCDiff) AddRequestPropertiesDiff(path string, operation string, mediaType string) *diff.SchemasDiff

type BackwardCompatibilityCheck

type BackwardCompatibilityCheck func(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

type BackwardCompatibilityCheckConfig

type BackwardCompatibilityCheckConfig struct {
	Checks              []BackwardCompatibilityCheck
	MinSunsetBetaDays   int
	MinSunsetStableDays int
	Localizer           localizations.Localizer
}

func GetChecks added in v1.3.10

func GetChecks(includeChecks utils.StringList) BackwardCompatibilityCheckConfig

func GetDefaultChecks added in v1.3.10

func GetDefaultChecks() BackwardCompatibilityCheckConfig

type BackwardCompatibilityError

type BackwardCompatibilityError struct {
	Id        string `json:"id,omitempty" yaml:"id,omitempty"`
	Text      string `json:"text,omitempty" yaml:"text,omitempty"`
	Comment   string `json:"comment,omitempty" yaml:"comment,omitempty"`
	Level     int    `json:"level" yaml:"level"`
	Operation string `json:"operation,omitempty" yaml:"operation,omitempty"`
	Path      string `json:"path,omitempty" yaml:"path,omitempty"`
	Source    string `json:"source,omitempty" yaml:"source,omitempty"`
}

func APIDeprecationCheck

func APIDeprecationCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func APIOperationIdRemovedCheck added in v1.3.15

func APIOperationIdRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func APIRemovedCheck

func APIRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func APISunsetChangedCheck

func APISunsetChangedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func APITagRemovedCheck added in v1.3.16

func APITagRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func AddedRequiredRequestBodyCheck

func AddedRequiredRequestBodyCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func NewRequestPathParameterCheck

func NewRequestPathParameterCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func NewRequiredRequestHeaderPropertyCheck

func NewRequiredRequestHeaderPropertyCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func NewRequiredRequestNonPathParameterCheck

func NewRequiredRequestNonPathParameterCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func NewRequiredRequestPropertyCheck

func NewRequiredRequestPropertyCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ProcessIgnoredBackwardCompatibilityErrors

func ProcessIgnoredBackwardCompatibilityErrors(level int, errs []BackwardCompatibilityError, ignoreFile string) ([]BackwardCompatibilityError, error)

func RequestBodyBecameRequiredCheck

func RequestBodyBecameRequiredCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestBodyEnumValueRemovedCheck added in v1.3.18

func RequestBodyEnumValueRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestHeaderPropertyBecameRequiredCheck

func RequestHeaderPropertyBecameRequiredCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterBecameRequiredCheck

func RequestParameterBecameRequiredCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterDefaultValueChanged added in v1.3.15

func RequestParameterDefaultValueChanged(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterEnumValueRemovedCheck

func RequestParameterEnumValueRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterMaxDecreasedCheck

func RequestParameterMaxDecreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterMaxLengthDecreasedCheck

func RequestParameterMaxLengthDecreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterMaxLengthSetCheck

func RequestParameterMaxLengthSetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterMaxSetCheck

func RequestParameterMaxSetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterMinIncreasedCheck

func RequestParameterMinIncreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterMinItemsIncreasedCheck

func RequestParameterMinItemsIncreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterMinItemsSetCheck

func RequestParameterMinItemsSetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterMinSetCheck

func RequestParameterMinSetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterPatternAddedOrChangedCheck

func RequestParameterPatternAddedOrChangedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterRemovedCheck

func RequestParameterRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterTypeChangedCheck

func RequestParameterTypeChangedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestParameterXExtensibleEnumValueRemovedCheck

func RequestParameterXExtensibleEnumValueRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyBecameRequiredCheck

func RequestPropertyBecameRequiredCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyEnumValueRemovedCheck

func RequestPropertyEnumValueRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyMaxDecreasedCheck

func RequestPropertyMaxDecreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyMaxLengthDecreasedCheck

func RequestPropertyMaxLengthDecreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyMaxLengthSetCheck

func RequestPropertyMaxLengthSetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyMaxSetCheck

func RequestPropertyMaxSetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyMinIncreasedCheck

func RequestPropertyMinIncreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyMinItemsIncreasedCheck

func RequestPropertyMinItemsIncreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyMinItemsSetCheck

func RequestPropertyMinItemsSetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyMinSetCheck

func RequestPropertyMinSetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyPatternAddedOrChangedCheck

func RequestPropertyPatternAddedOrChangedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyRemovedCheck

func RequestPropertyRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyTypeChangedCheck

func RequestPropertyTypeChangedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func RequestPropertyXExtensibleEnumValueRemovedCheck

func RequestPropertyXExtensibleEnumValueRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseHeaderBecameOptional

func ResponseHeaderBecameOptional(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseHeaderRemoved

func ResponseHeaderRemoved(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseMediaTypeEnumValueRemovedCheck added in v1.3.18

func ResponseMediaTypeEnumValueRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseMediaTypeRemoved

func ResponseMediaTypeRemoved(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseNonSuccessStatusRemoved added in v1.3.10

func ResponseNonSuccessStatusRemoved(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseOptionalPropertyRemovedCheck

func ResponseOptionalPropertyRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseParameterEnumValueRemovedCheck added in v1.3.18

func ResponseParameterEnumValueRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyBecameOptionalCheck

func ResponsePropertyBecameOptionalCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyEnumValueAddedCheck

func ResponsePropertyEnumValueAddedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyMaxIncreasedCheck

func ResponsePropertyMaxIncreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyMaxLengthIncreasedCheck

func ResponsePropertyMaxLengthIncreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyMaxLengthUnsetCheck

func ResponsePropertyMaxLengthUnsetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyMinDecreasedCheck

func ResponsePropertyMinDecreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyMinItemsDecreasedCheck

func ResponsePropertyMinItemsDecreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyMinItemsUnsetCheck

func ResponsePropertyMinItemsUnsetCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyMinLengthDecreasedCheck

func ResponsePropertyMinLengthDecreasedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponsePropertyTypeChangedCheck

func ResponsePropertyTypeChangedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseRequiredPropertyBecameNonWriteOnlyCheck

func ResponseRequiredPropertyBecameNonWriteOnlyCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseRequiredPropertyRemovedCheck

func ResponseRequiredPropertyRemovedCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func ResponseSuccessRemoved added in v1.3.10

func ResponseSuccessRemoved(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig, filter func(int) bool, id string) []BackwardCompatibilityError

func ResponseSuccessStatusRemoved

func ResponseSuccessStatusRemoved(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func UncheckedRequestAllOfWarnCheck

func UncheckedRequestAllOfWarnCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func UncheckedResponseAllOfWarnCheck

func UncheckedResponseAllOfWarnCheck(diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap, config BackwardCompatibilityCheckConfig) []BackwardCompatibilityError

func (*BackwardCompatibilityError) Error

func (*BackwardCompatibilityError) LocalizedError

func (*BackwardCompatibilityError) PrettyError

type BackwardCompatibilityErrors added in v1.3.11

type BackwardCompatibilityErrors []BackwardCompatibilityError

func CheckBackwardCompatibility

func CheckBackwardCompatibility(config BackwardCompatibilityCheckConfig, diffReport *diff.Diff, operationsSources *diff.OperationsSourcesMap) BackwardCompatibilityErrors

func (BackwardCompatibilityErrors) Len added in v1.3.11

func (bcErrors BackwardCompatibilityErrors) Len() int

func (BackwardCompatibilityErrors) Less added in v1.3.11

func (bcErrors BackwardCompatibilityErrors) Less(i, j int) bool

func (BackwardCompatibilityErrors) Swap added in v1.3.11

func (bcErrors BackwardCompatibilityErrors) Swap(i, j int)

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL