All checks were successful
build-dsl-smoke / Build judge (push) Successful in 12s
build-dsl-smoke / debug / clang / linux (push) Successful in 6s
build-dsl-smoke / debug / gcc / linux (push) Successful in 8s
build-dsl-smoke / release / clang / linux (push) Successful in 8s
build-dsl-smoke / release / gcc / linux (push) Successful in 6s
build-dsl-smoke / sanitized / clang / linux (push) Successful in 8s
build-dsl-smoke / sanitized / gcc / linux (push) Successful in 7s
build-dsl-smoke / debug / clang / windows (push) Successful in 13s
build-dsl-smoke / debug-valgrind / gcc / linux (push) Successful in 14s
build-dsl-smoke / release / clang / windows (push) Successful in 16s
build-dsl-smoke / debug / msvc / windows (push) Successful in 18s
build-dsl-smoke / release / msvc / windows (push) Successful in 17s
build-dsl-smoke / SUMMARY (push) Successful in 4s
Release / Build & publish (push) Successful in 48s
Reviewed-on: #1
58 lines
1.4 KiB
Go
58 lines
1.4 KiB
Go
package runner
|
|
|
|
import "testing"
|
|
|
|
func TestAggregateScoreEmpty(t *testing.T) {
|
|
r := &SuiteResult{}
|
|
if got := r.AggregateScore(); got != 0 {
|
|
t.Errorf("empty aggregate = %v, want 0", got)
|
|
}
|
|
}
|
|
|
|
func TestAggregateScoreSingleBuild(t *testing.T) {
|
|
r := &SuiteResult{
|
|
Builds: []*BuildRun{{Name: "release", TotalScore: 0.75}},
|
|
}
|
|
if got := r.AggregateScore(); got != 0.75 {
|
|
t.Errorf("single build aggregate = %v, want 0.75", got)
|
|
}
|
|
}
|
|
|
|
func TestAggregateScoreTakesMinimum(t *testing.T) {
|
|
r := &SuiteResult{
|
|
Builds: []*BuildRun{
|
|
{Name: "release", TotalScore: 1.0},
|
|
{Name: "debug", TotalScore: 0.9},
|
|
{Name: "sanitized", TotalScore: 0.95},
|
|
},
|
|
}
|
|
if got := r.AggregateScore(); got != 0.9 {
|
|
t.Errorf("aggregate = %v, want 0.9 (minimum)", got)
|
|
}
|
|
}
|
|
|
|
func TestAggregateScoreIgnoresSkipped(t *testing.T) {
|
|
r := &SuiteResult{
|
|
Builds: []*BuildRun{
|
|
{Name: "release", TotalScore: 1.0},
|
|
{Name: "sanitized", Skipped: true, SkipReason: "platforms=linux"},
|
|
{Name: "debug", TotalScore: 0.8},
|
|
},
|
|
}
|
|
if got := r.AggregateScore(); got != 0.8 {
|
|
t.Errorf("aggregate with skipped = %v, want 0.8", got)
|
|
}
|
|
}
|
|
|
|
func TestAggregateScoreAllSkipped(t *testing.T) {
|
|
r := &SuiteResult{
|
|
Builds: []*BuildRun{
|
|
{Name: "a", Skipped: true},
|
|
{Name: "b", Skipped: true},
|
|
},
|
|
}
|
|
if got := r.AggregateScore(); got != 1.0 {
|
|
t.Errorf("all-skipped aggregate = %v, want 1.0", got)
|
|
}
|
|
}
|