mirror of
https://github.com/gogs/gogs.git
synced 2026-02-10 08:27:00 +01:00
33 lines
716 B
Go
33 lines
716 B
Go
package parser
|
|
|
|
import (
|
|
"log"
|
|
|
|
"github.com/smartystreets/goconvey/web/server/contract"
|
|
)
|
|
|
|
type Parser struct {
|
|
parser func(*contract.PackageResult, string)
|
|
}
|
|
|
|
func (self *Parser) Parse(packages []*contract.Package) {
|
|
for _, p := range packages {
|
|
if p.Active() && p.HasUsableResult() {
|
|
self.parser(p.Result, p.Output)
|
|
} else if p.Ignored {
|
|
p.Result.Outcome = contract.Ignored
|
|
} else if p.Disabled {
|
|
p.Result.Outcome = contract.Disabled
|
|
} else {
|
|
p.Result.Outcome = contract.TestRunAbortedUnexpectedly
|
|
}
|
|
log.Printf("[%s]: %s\n", p.Result.Outcome, p.Name)
|
|
}
|
|
}
|
|
|
|
func NewParser(helper func(*contract.PackageResult, string)) *Parser {
|
|
self := new(Parser)
|
|
self.parser = helper
|
|
return self
|
|
}
|