Merge pull request #18378 from krousey/controllerflake

Auto commit by PR queue bot
This commit is contained in:
k8s-merge-robot 2015-12-09 08:44:29 -08:00
commit b46cee885a

View File

@ -311,35 +311,42 @@ func TestUpdate(t *testing.T) {
pair{FROM, FROM}: true, pair{FROM, FROM}: true,
} }
pod := func(name, check string) *api.Pod { pod := func(name, check string, final bool) *api.Pod {
return &api.Pod{ p := &api.Pod{
ObjectMeta: api.ObjectMeta{ ObjectMeta: api.ObjectMeta{
Name: name, Name: name,
Labels: map[string]string{"check": check}, Labels: map[string]string{"check": check},
}, },
} }
if final {
p.Labels["final"] = "true"
}
return p
}
deletePod := func(p *api.Pod) bool {
return p.Labels["final"] == "true"
} }
tests := []func(string){ tests := []func(string){
func(name string) { func(name string) {
name = "a-" + name name = "a-" + name
source.Add(pod(name, FROM)) source.Add(pod(name, FROM, false))
source.Modify(pod(name, TO)) source.Modify(pod(name, TO, true))
}, },
func(name string) { func(name string) {
name = "b-" + name name = "b-" + name
source.Add(pod(name, FROM)) source.Add(pod(name, FROM, false))
source.ModifyDropWatch(pod(name, TO)) source.ModifyDropWatch(pod(name, TO, true))
}, },
func(name string) { func(name string) {
name = "c-" + name name = "c-" + name
source.AddDropWatch(pod(name, FROM)) source.AddDropWatch(pod(name, FROM, false))
source.Modify(pod(name, ADD_MISSED)) source.Modify(pod(name, ADD_MISSED, false))
source.Modify(pod(name, TO)) source.Modify(pod(name, TO, true))
}, },
func(name string) { func(name string) {
name = "d-" + name name = "d-" + name
source.Add(pod(name, FROM)) source.Add(pod(name, FROM, true))
}, },
} }
@ -362,7 +369,9 @@ func TestUpdate(t *testing.T) {
if !allowedTransitions[pair{from, to}] { if !allowedTransitions[pair{from, to}] {
t.Errorf("observed transition %q -> %q for %v", from, to, n.Name) t.Errorf("observed transition %q -> %q for %v", from, to, n.Name)
} }
source.Delete(n) if deletePod(n) {
source.Delete(n)
}
}, },
DeleteFunc: func(obj interface{}) { DeleteFunc: func(obj interface{}) {
testDoneWG.Done() testDoneWG.Done()