blob: 217d1a687f6237a1e61606c91d4299cc4d5bd175 [file] [log] [blame]
package continuous
import (
"sort"
"testing"
"github.com/stretchr/testify/assert"
"go.skia.org/infra/android_ingest/go/buildapi"
"go.skia.org/infra/go/testutils/unittest"
)
func TestRationalize(t *testing.T) {
unittest.SmallTest(t)
// startTS is much later.
builds := []buildapi.Build{
{TS: 120},
{TS: 123},
{TS: 125},
}
builds = rationalizeTimestamps(builds, 200)
assert.Equal(t, int64(201), builds[0].TS)
assert.Equal(t, int64(202), builds[1].TS)
assert.Equal(t, int64(203), builds[2].TS)
// startTS is in middle.
builds = []buildapi.Build{
{TS: 120},
{TS: 123},
{TS: 125},
}
builds = rationalizeTimestamps(builds, 122)
assert.Equal(t, int64(123), builds[0].TS)
assert.Equal(t, int64(124), builds[1].TS)
assert.Equal(t, int64(125), builds[2].TS)
// startTS is way before.
builds = []buildapi.Build{
{TS: 120},
{TS: 123},
{TS: 125},
}
builds = rationalizeTimestamps(builds, 100)
assert.Equal(t, int64(120), builds[0].TS)
assert.Equal(t, int64(121), builds[1].TS)
assert.Equal(t, int64(122), builds[2].TS)
}
func TestSort(t *testing.T) {
unittest.SmallTest(t)
builds := []buildapi.Build{
{TS: 120, BuildId: 12},
{TS: 123, BuildId: 11},
{TS: 125, BuildId: 13},
}
sort.Sort(BuildSlice(builds))
assert.Equal(t, int64(11), builds[0].BuildId)
assert.Equal(t, int64(123), builds[0].TS)
assert.Equal(t, int64(12), builds[1].BuildId)
assert.Equal(t, int64(13), builds[2].BuildId)
}