123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- package contract
- import (
- "github.com/smartystreets/goconvey/convey/reporting"
- "github.com/smartystreets/goconvey/web/server/messaging"
- )
- type Package struct {
- Path string
- Name string
- Ignored bool
- Disabled bool
- BuildTags []string
- TestArguments []string
- Error error
- Output string
- Result *PackageResult
- HasImportCycle bool
- }
- func NewPackage(folder *messaging.Folder, name string, hasImportCycle bool) *Package {
- self := new(Package)
- self.Path = folder.Path
- self.Name = name
- self.Result = NewPackageResult(self.Name)
- self.Ignored = folder.Ignored
- self.Disabled = folder.Disabled
- self.BuildTags = folder.BuildTags
- self.TestArguments = folder.TestArguments
- self.HasImportCycle = hasImportCycle
- return self
- }
- func (self *Package) Active() bool {
- return !self.Disabled && !self.Ignored
- }
- func (self *Package) HasUsableResult() bool {
- return self.Active() && (self.Error == nil || (self.Output != ""))
- }
- type CompleteOutput struct {
- Packages []*PackageResult
- Revision string
- Paused bool
- }
- var ( // PackageResult.Outcome values:
- Ignored = "ignored"
- Disabled = "disabled"
- Passed = "passed"
- Failed = "failed"
- Panicked = "panicked"
- BuildFailure = "build failure"
- NoTestFiles = "no test files"
- NoTestFunctions = "no test functions"
- NoGoFiles = "no go code"
- TestRunAbortedUnexpectedly = "test run aborted unexpectedly"
- )
- type PackageResult struct {
- PackageName string
- Elapsed float64
- Coverage float64
- Outcome string
- BuildOutput string
- TestResults []TestResult
- }
- func NewPackageResult(packageName string) *PackageResult {
- self := new(PackageResult)
- self.PackageName = packageName
- self.TestResults = []TestResult{}
- self.Coverage = -1
- return self
- }
- type TestResult struct {
- TestName string
- Elapsed float64
- Passed bool
- Skipped bool
- File string
- Line int
- Message string
- Error string
- Stories []reporting.ScopeResult
- RawLines []string `json:",omitempty"`
- }
- func NewTestResult(testName string) *TestResult {
- self := new(TestResult)
- self.Stories = []reporting.ScopeResult{}
- self.RawLines = []string{}
- self.TestName = testName
- return self
- }
|