123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- package hercules
- import (
- "testing"
- "github.com/stretchr/testify/assert"
- "gopkg.in/src-d/go-git.v4/plumbing"
- )
- func fixtureDaysSinceStart() *DaysSinceStart {
- dss := DaysSinceStart{}
- dss.Initialize(testRepository)
- return &dss
- }
- func TestDaysSinceStartMeta(t *testing.T) {
- dss := fixtureDaysSinceStart()
- assert.Equal(t, dss.Name(), "DaysSinceStart")
- assert.Equal(t, len(dss.Provides()), 1)
- assert.Equal(t, dss.Provides()[0], "day")
- assert.Equal(t, len(dss.Requires()), 0)
- assert.Len(t, dss.ListConfigurationOptions(), 0)
- dss.Configure(nil)
- }
- func TestDaysSinceStartRegistration(t *testing.T) {
- tp, exists := Registry.registered[(&DaysSinceStart{}).Name()]
- assert.True(t, exists)
- assert.Equal(t, tp.Elem().Name(), "DaysSinceStart")
- tps, exists := Registry.provided[(&DaysSinceStart{}).Provides()[0]]
- assert.True(t, exists)
- assert.Len(t, tps, 1)
- assert.Equal(t, tps[0].Elem().Name(), "DaysSinceStart")
- }
- func TestDaysSinceStartConsume(t *testing.T) {
- dss := fixtureDaysSinceStart()
- deps := map[string]interface{}{}
- commit, _ := testRepository.CommitObject(plumbing.NewHash(
- "cce947b98a050c6d356bc6ba95030254914027b1"))
- deps["commit"] = commit
- deps["index"] = 0
- res, err := dss.Consume(deps)
- assert.Nil(t, err)
- assert.Equal(t, res["day"].(int), 0)
- assert.Equal(t, dss.previousDay, 0)
- commit, _ = testRepository.CommitObject(plumbing.NewHash(
- "fc9ceecb6dabcb2aab60e8619d972e8d8208a7df"))
- deps["commit"] = commit
- deps["index"] = 10
- res, err = dss.Consume(deps)
- assert.Nil(t, err)
- assert.Equal(t, res["day"].(int), 1)
- assert.Equal(t, dss.previousDay, 1)
- commit, _ = testRepository.CommitObject(plumbing.NewHash(
- "a3ee37f91f0d705ec9c41ae88426f0ae44b2fbc3"))
- deps["commit"] = commit
- deps["index"] = 20
- res, err = dss.Consume(deps)
- assert.Nil(t, err)
- assert.Equal(t, res["day"].(int), 1)
- assert.Equal(t, dss.previousDay, 1)
- commit, _ = testRepository.CommitObject(plumbing.NewHash(
- "a8b665a65d7aced63f5ba2ff6d9b71dac227f8cf"))
- deps["commit"] = commit
- deps["index"] = 20
- res, err = dss.Consume(deps)
- assert.Nil(t, err)
- assert.Equal(t, res["day"].(int), 2)
- assert.Equal(t, dss.previousDay, 2)
- commit, _ = testRepository.CommitObject(plumbing.NewHash(
- "186ff0d7e4983637bb3762a24d6d0a658e7f4712"))
- deps["commit"] = commit
- deps["index"] = 30
- res, err = dss.Consume(deps)
- assert.Nil(t, err)
- assert.Equal(t, res["day"].(int), 2)
- assert.Equal(t, dss.previousDay, 2)
- }
|