summaryrefslogtreecommitdiff
path: root/adapters/gtest/results.go
diff options
context:
space:
mode:
Diffstat (limited to 'adapters/gtest/results.go')
-rw-r--r--adapters/gtest/results.go42
1 files changed, 27 insertions, 15 deletions
diff --git a/adapters/gtest/results.go b/adapters/gtest/results.go
index 88e4069..14f5d1d 100644
--- a/adapters/gtest/results.go
+++ b/adapters/gtest/results.go
@@ -4,10 +4,7 @@ import (
"bytes"
"encoding/json"
"io"
- "log"
"time"
-
- "golang.flu0r1ne.net/planr"
)
type gFailure struct {
@@ -48,36 +45,51 @@ type gResults struct {
}
type Result struct {
- id string
- result planr.TestResult
+ id string
+ pass bool
+ failureMsg string
+ testOutput string
+}
+
+func failureMsg(failures []gFailure) string {
+ failure_msg := ""
+
+ for _, failure := range failures {
+ failure_msg += failure.Failure + "\n"
+ }
+
+ return failure_msg
}
-func decodeResults(r io.Reader) []Result {
+func decodeResults(r io.Reader) ([]Result, error) {
+ decoded := make([]Result, 0)
+
var results gResults
buf := bytes.Buffer{}
if _, err := buf.ReadFrom(r); err != nil {
- log.Fatal(err)
+ return decoded, err
}
if err := json.Unmarshal(buf.Bytes(), &results); err != nil {
- log.Fatal(err)
+ return decoded, err
}
- decoded := make([]Result, 0)
for _, suite := range results.Testsuites {
for _, test := range suite.Testsuite {
n := len(test.Failures)
- decoded = append(decoded, Result{
+
+ res := Result {
id: suite.Name + "." + test.Name,
- result: planr.TestResult {
- Pass: n == 0,
- },
- })
+ pass: n == 0,
+ failureMsg: failureMsg(test.Failures),
+ }
+
+ decoded = append(decoded, res)
}
}
- return decoded
+ return decoded, nil
}