result

package
v0.15.0 Latest Latest
Warning

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

Go to latest
Published: Jan 17, 2025 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetMachineFriendlyObservations added in v0.8.0

func GetMachineFriendlyObservations(resultComparisonMap ResultComparisonMap) map[StateChange]interface{}

GetMachineFriendlyObservations returns a machine-readable output of diagnosable observations (e.g., SATISFIED_TO_NOT_SATISFIED)

func NewResultComparisonMap

func NewResultComparisonMap(result oscalTypes.Result, comparedResult oscalTypes.Result) map[string]ResultComparison

NewResultComparisonMap -> create a map of result comparisons from two OSCAL results

func RefactorObservationsByControls

func RefactorObservationsByControls(ResultComparisonMap ResultComparisonMap) (map[string]ObservationPair, map[string][]string, []string)

Refactor observations by controls

Types

type ObservationPair

type ObservationPair struct {
	StateChange             StateChange
	Satisfied               bool
	Name                    string
	Observation             string
	ObservationUuid         string
	ComparedObservation     string
	ComparedObservationUuid string
}

func CreateObservationPairs

func CreateObservationPairs(observations []*oscalTypes.Observation, comparedObservations []*oscalTypes.Observation) []*ObservationPair

CreateObservationPairs creates a slice of observation pairs from a slice of observations and compared observations

type ResultComparison

type ResultComparison struct {
	StateChange      StateChange
	Satisfied        bool
	Finding          *oscalTypes.Finding
	ComparedFinding  *oscalTypes.Finding
	ObservationPairs []*ObservationPair
}

func (ResultComparison) PrintResultComparisonTable

func (r ResultComparison) PrintResultComparisonTable(changedOnly bool) error

PrintResultComparisonTable prints a table output of compared results

type ResultComparisonMap

type ResultComparisonMap map[string]ResultComparison

func Collapse

func Collapse(mapResultComparisonMap map[string]ResultComparisonMap) ResultComparisonMap

Collapse map[string]ResultComparisonMap to single ResultComparisonMap ** Note this function assumes all unique entities in each ResultComparisonMap

func GetResultComparisonMap

func GetResultComparisonMap(resultComparisonMap map[string]ResultComparison, stateChange StateChange, satisfied bool) ResultComparisonMap

GetResultComparisonMap gets the result comparison category from the result comparison map

func (ResultComparisonMap) PrintObservationComparisonTable

func (rm ResultComparisonMap) PrintObservationComparisonTable(changedOnly bool, skipRemoved bool, failedOnly bool) ([]string, error)

PrintObservationComparisonTable prints a table output of compared observations, per control

type StateChange

type StateChange string
const (
	NOT_SATISFIED_TO_SATISFIED StateChange = "NOT SATISFIED TO SATISFIED"
	SATISFIED_TO_NOT_SATISFIED StateChange = "SATISFIED TO NOT SATISFIED"
	NEW                        StateChange = "NEW"
	REMOVED                    StateChange = "REMOVED"
	UNCHANGED                  StateChange = "UNCHANGED"
)

Jump to

Keyboard shortcuts

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