Documentation
¶
Index ¶
- Constants
- Variables
- func CheckFlags(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, test TestRunner) bool
- func CheckVersion(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, test TestRunner) bool
- func FailError(result TestResult) error
- func GenerateReport(tests *[]TestResult, logger *logrus.Logger, Config *TestConfig, ...) (uint, error)
- func LogResult(logger *types.ThreadLogger, result TestResult)
- func LogStart(logger *types.ThreadLogger, test TestRunner, CRUD, testName string)
- func NewRunner(id int, dir *TestDirector, cx1client *Cx1ClientGo.Cx1Client, ...)
- func OutputReportHTML(reportName string, reportData *Report, Config *TestConfig) error
- func OutputReportJSON(reportName string, reportData *Report) error
- func OutputSummaryConsole(reportData *Report, logger *logrus.Logger)
- func RunTest(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, ...) error
- func RunTests(cx1client *Cx1ClientGo.Cx1Client, logger *logrus.Logger, Config *TestConfig, ...) uint
- type AllCRUD
- type Counter
- type CounterSet
- type Report
- type ReportSettings
- type ReportSummary
- type ReportTestDetails
- type TestConfig
- type TestDirector
- type TestResult
- type TestRunner
- type TestSet
- func (t TestSet) GetOtherClient(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, ...) (*Cx1ClientGo.Cx1Client, error)
- func (t TestSet) GetTestCount() int
- func (t *TestSet) Init()
- func (t *TestSet) InitTestIDs()
- func (t *TestSet) InitTestIDsCRUD(CRUD string)
- func (t TestSet) IsValid(logger *logrus.Logger) bool
- func (t TestSet) OtherUser() bool
- func (t TestSet) PrintTests()
- func (t *TestSet) Run(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, CRUD string, ...) ([]TestResult, error)
- func (t *TestSet) RunTests(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, ...) []TestResult
- func (t *TestSet) SetActiveThread(thread int)
- type TestThread
Constants ¶
View Source
const ( TST_FAIL = 0 TST_PASS = 1 TST_SKIP = 2 )
Variables ¶
View Source
var LastTestID uint = 0
Functions ¶
func CheckFlags ¶
func CheckFlags(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, test TestRunner) bool
func CheckVersion ¶ added in v0.0.25
func CheckVersion(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, test TestRunner) bool
func FailError ¶ added in v0.0.21
func FailError(result TestResult) error
func GenerateReport ¶
func GenerateReport(tests *[]TestResult, logger *logrus.Logger, Config *TestConfig, startTime, endTime time.Time, threads int) (uint, error)
func LogResult ¶
func LogResult(logger *types.ThreadLogger, result TestResult)
func LogStart ¶
func LogStart(logger *types.ThreadLogger, test TestRunner, CRUD, testName string)
func NewRunner ¶ added in v0.0.27
func NewRunner(id int, dir *TestDirector, cx1client *Cx1ClientGo.Cx1Client, logger *logrus.Logger, Config *TestConfig, out chan<- *[]TestResult)
func OutputReportHTML ¶ added in v0.0.14
func OutputReportHTML(reportName string, reportData *Report, Config *TestConfig) error
func OutputReportJSON ¶ added in v0.0.14
func OutputSummaryConsole ¶ added in v0.0.14
func RunTest ¶
func RunTest(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, CRUD, testName string, test TestRunner, results *[]TestResult, Config *TestConfig, failSet error) error
func RunTests ¶
func RunTests(cx1client *Cx1ClientGo.Cx1Client, logger *logrus.Logger, Config *TestConfig, threads int) uint
Types ¶
type AllCRUD ¶ added in v0.0.28
type AllCRUD interface { types.AccessAssignmentCRUD | types.AnalyticsCRUD }
type Counter ¶
test result output
func (*Counter) AddTest ¶ added in v0.0.14
func (c *Counter) AddTest(t *TestResult)
type CounterSet ¶
func (*CounterSet) AddTest ¶ added in v0.0.14
func (c *CounterSet) AddTest(t *TestResult)
type Report ¶ added in v0.0.14
type Report struct { Settings ReportSettings `json:"Settings"` Summary ReportSummary `json:"Summary"` Details []ReportTestDetails `json:"Details"` }
func (*Report) AddTest ¶ added in v0.0.14
func (r *Report) AddTest(t *TestResult)
type ReportSettings ¶ added in v0.0.14
type ReportSettings struct { Target string `json:"TestTarget"` Auth string `json:"Authentication"` Config string `json:"TestConfig"` StartTime string `json:"StartTime"` EndTime string `json:"EndTime"` Duration string `json:"Duration"` E2ESuffix string `json:"E2ESuffix"` Threads int `json:"Threads"` Version Cx1ClientGo.VersionInfo `json:"TargetVersions"` }
type ReportSummary ¶ added in v0.0.14
type ReportSummary struct { Total Counter `json:"Total"` Area struct { Access CounterSet Application CounterSet Analytics CounterSet Branch CounterSet Client CounterSet Flag CounterSet Group CounterSet Import CounterSet Preset CounterSet Project CounterSet Query CounterSet Result CounterSet Report CounterSet Role CounterSet Scan CounterSet User CounterSet } `json:"Area"` }
func (*ReportSummary) AddTest ¶ added in v0.0.14
func (s *ReportSummary) AddTest(t *TestResult)
type ReportTestDetails ¶ added in v0.0.14
type ReportTestDetails struct { Name string Source string Test string Duration float64 ResultType int `json:"-"` Result string ID uint FailOutputs []string `json:"FailOutputs,omitempty"` }
func (ReportTestDetails) String ¶ added in v0.0.14
func (d ReportTestDetails) String() string
type TestConfig ¶
type TestConfig struct { Cx1URL string `yaml:"Cx1URL"` IAMURL string `yaml:"IAMURL"` Tenant string `yaml:"Tenant"` ProxyURL string `yaml:"ProxyURL"` NoTLS bool `yaml:"NoTLS"` Tests []TestSet `yaml:"Tests"` LogLevel string `yaml:"LogLevel"` MultiThreadable bool `yaml:"MultiThreadable"` InlineReport bool `yaml:"-"` ConfigPath string `yaml:"-"` AuthType string `yaml:"-"` AuthUser string `yaml:"-"` ReportType string `yaml:"ReportType"` ReportName string `yaml:"ReportName"` Engines types.EnabledEngines `yaml:"-"` EnvironmentVersion Cx1ClientGo.VersionInfo `yaml:"-"` TestCount int `yaml:"-"` }
func LoadConfig ¶
func LoadConfig(logger *logrus.Logger, configPath string) (TestConfig, error)
func (TestConfig) CreateHTTPClient ¶ added in v0.0.23
func (TestConfig) GetTestCount ¶ added in v0.0.27
func (o TestConfig) GetTestCount() int
func (*TestConfig) InitTestIDs ¶ added in v0.0.27
func (t *TestConfig) InitTestIDs()
func (*TestConfig) IsValid ¶ added in v0.0.28
func (t *TestConfig) IsValid(logger *logrus.Logger) bool
func (TestConfig) PrintTests ¶ added in v0.0.27
func (c TestConfig) PrintTests()
type TestDirector ¶ added in v0.0.27
type TestDirector struct { Config *TestConfig Lock sync.Mutex TestIndex int }
func NewDirector ¶ added in v0.0.27
func NewDirector(Config *TestConfig) TestDirector
func (*TestDirector) GetNextTestSet ¶ added in v0.0.27
func (d *TestDirector) GetNextTestSet() *TestSet
type TestResult ¶
type TestResult struct { FailTest bool Result int CRUD string Module string Duration float64 Name string Id uint TestObject string Reason []string TestSource string Attempts uint }
func MakeResult ¶ added in v0.0.17
func MakeResult(test TestRunner) TestResult
func Run ¶
func Run(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, CRUD, testName string, test TestRunner, Config *TestConfig) TestResult
type TestRunner ¶
type TestRunner interface { Validate(testType string) error String() string IsType(testType string) bool IsForced() bool IsSupported(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, testType string, Engines *types.EnabledEngines) error IsNegative() bool GetSource() string GetID() uint GetModule() string GetFlags() []string GetVersion() types.ProductVersion GetVersionStr() string GetCurrentThread() int OnFail() types.FailAction RunCreate(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, Engines *types.EnabledEngines) error RunRead(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, Engines *types.EnabledEngines) error RunUpdate(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, Engines *types.EnabledEngines) error RunDelete(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, Engines *types.EnabledEngines) error }
type TestSet ¶
type TestSet struct { Name string `yaml:"Name"` File string `yaml:"File"` RunAs struct { APIKey string `yaml:"APIKey"` ClientID string `yaml:"ClientID"` ClientSecret string `yaml:"ClientSecret"` OIDCClient string `yaml:"OIDCClient"` } `yaml:"RunAs"` AccessAssignments []types.AccessAssignmentCRUD `yaml:"AccessAssignments"` Analytics []types.AnalyticsCRUD `yaml:"Analytics"` Applications []types.ApplicationCRUD `yaml:"Applications"` Branches []types.BranchCRUD `yaml:"Branches"` Clients []types.OIDCClientCRUD `yaml:"OIDCClients"` Flags []types.FlagCRUD `yaml:"Flags"` Groups []types.GroupCRUD `yaml:"Groups"` Imports []types.ImportCRUD `yaml:"Imports"` Presets []types.PresetCRUD `yaml:"Presets"` Projects []types.ProjectCRUD `yaml:"Projects"` Queries []types.CxQLCRUD `yaml:"Queries"` Reports []types.ReportCRUD `yaml:"Reports"` Results []types.ResultCRUD `yaml:"Results"` Roles []types.RoleCRUD `yaml:"Roles"` Scans []types.ScanCRUD `yaml:"Scans"` Users []types.UserCRUD `yaml:"Users"` Wait uint `yaml:"Wait"` Thread uint `yaml:"Thread"` ActiveThread int `yaml:"-"` SubTests []TestSet `yaml:"-"` TestSource string `yaml:"-"` }
func (TestSet) GetOtherClient ¶ added in v0.0.23
func (t TestSet) GetOtherClient(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, config *TestConfig) (*Cx1ClientGo.Cx1Client, error)
func (TestSet) GetTestCount ¶ added in v0.0.27
func (*TestSet) InitTestIDs ¶ added in v0.0.27
func (t *TestSet) InitTestIDs()
func (*TestSet) InitTestIDsCRUD ¶ added in v0.0.27
func (TestSet) PrintTests ¶ added in v0.0.27
func (t TestSet) PrintTests()
func (*TestSet) Run ¶
func (t *TestSet) Run(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, CRUD string, Config *TestConfig, TestSetFail error) ([]TestResult, error)
func (*TestSet) RunTests ¶
func (t *TestSet) RunTests(cx1client *Cx1ClientGo.Cx1Client, logger *types.ThreadLogger, Config *TestConfig, testSetFail error) []TestResult
func (*TestSet) SetActiveThread ¶ added in v0.0.27
type TestThread ¶ added in v0.0.27
type TestThread struct {
Id int
}
Click to show internal directories.
Click to hide internal directories.