Skip to content

Commit 53c2be5

Browse files
committed
Check that events are at least expected ones
Events are not guaranteed to be sent once, so allow for more than one in the cancel_test. Fixes tektoncd#3374 Signed-off-by: Andrea Frittoli <andrea.frittoli@uk.ibm.com>
1 parent 2436f0d commit 53c2be5

File tree

2 files changed

+48
-22
lines changed

2 files changed

+48
-22
lines changed

test/cancel_test.go

+24-11
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"context"
2323
"encoding/json"
2424
"fmt"
25+
"strings"
2526
"sync"
2627
"testing"
2728

@@ -144,23 +145,35 @@ func TestTaskRunPipelineRunCancel(t *testing.T) {
144145
trName = append(trName, taskrunItem.Name)
145146
}
146147

147-
matchKinds := map[string][]string{"PipelineRun": {pipelineRun.Name}, "TaskRun": trName}
148-
// Expected failure events: 1 for the pipelinerun cancel, 1 for each TaskRun
149-
expectedNumberOfEvents := 1 + len(trName)
148+
matchKinds := map[string][]string{"PipelineRun": {pipelineRun.Name}}
149+
// Expected failure events: 1 for the pipelinerun cancel
150+
expectedNumberOfEvents := 1
150151
t.Logf("Making sure %d events were created from pipelinerun with kinds %v", expectedNumberOfEvents, matchKinds)
151152
events, err := collectMatchingEvents(ctx, c.KubeClient, namespace, matchKinds, "Failed")
152153
if err != nil {
153154
t.Fatalf("Failed to collect matching events: %q", err)
154155
}
155-
if len(events) != expectedNumberOfEvents {
156-
collectedEvents := ""
157-
for i, event := range events {
158-
collectedEvents += fmt.Sprintf("%#v", event)
159-
if i < (len(events) - 1) {
160-
collectedEvents += ", "
161-
}
156+
if len(events) < expectedNumberOfEvents {
157+
collectedEvents := make([]string, 0, len(events))
158+
for _, event := range events {
159+
collectedEvents = append(collectedEvents, fmt.Sprintf("%#v", event))
160+
}
161+
t.Fatalf("Expected %d number of failed events from pipelinerun but got %d; list of received events : %s", expectedNumberOfEvents, len(events), strings.Join(collectedEvents, ", "))
162+
}
163+
matchKinds = map[string][]string{"TaskRun": trName}
164+
// Expected failure events: 1 for each TaskRun
165+
expectedNumberOfEvents = len(trName)
166+
t.Logf("Making sure %d events were created from taskruns with kinds %v", expectedNumberOfEvents, matchKinds)
167+
events, err = collectMatchingEvents(ctx, c.KubeClient, namespace, matchKinds, "Failed")
168+
if err != nil {
169+
t.Fatalf("Failed to collect matching events: %q", err)
170+
}
171+
if len(events) < expectedNumberOfEvents {
172+
collectedEvents := make([]string, 0, len(events))
173+
for _, event := range events {
174+
collectedEvents = append(collectedEvents, fmt.Sprintf("%#v", event))
162175
}
163-
t.Fatalf("Expected %d number of successful events from pipelinerun and taskrun but got %d; list of received events : %#v", expectedNumberOfEvents, len(events), collectedEvents)
176+
t.Fatalf("Expected %d number of failed events from taskrun but got %d; list of received events : %s", expectedNumberOfEvents, len(events), strings.Join(collectedEvents, ", "))
164177
}
165178
})
166179
}

test/v1alpha1/cancel_test.go

+24-11
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"context"
2323
"encoding/json"
2424
"fmt"
25+
"strings"
2526
"sync"
2627
"testing"
2728

@@ -144,23 +145,35 @@ func TestTaskRunPipelineRunCancel(t *testing.T) {
144145
for _, taskrunItem := range taskrunList.Items {
145146
trName = append(trName, taskrunItem.Name)
146147
}
147-
matchKinds := map[string][]string{"PipelineRun": {pipelineRunName}, "TaskRun": trName}
148-
// Expected failure events: 1 for the pipelinerun cancel, 1 for each TaskRun
149-
expectedNumberOfEvents := 1 + len(trName)
148+
matchKinds := map[string][]string{"PipelineRun": {pipelineRunName}}
149+
// Expected failure events: 1 for the pipelinerun cancel
150+
expectedNumberOfEvents := 1
150151
t.Logf("Making sure %d events were created from pipelinerun with kinds %v", expectedNumberOfEvents, matchKinds)
151152
events, err := collectMatchingEvents(ctx, c.KubeClient, namespace, matchKinds, "Failed")
152153
if err != nil {
153154
t.Fatalf("Failed to collect matching events: %q", err)
154155
}
155-
if len(events) != expectedNumberOfEvents {
156-
collectedEvents := ""
157-
for i, event := range events {
158-
collectedEvents += fmt.Sprintf("%#v", event)
159-
if i < (len(events) - 1) {
160-
collectedEvents += ", "
161-
}
156+
if len(events) < expectedNumberOfEvents {
157+
collectedEvents := make([]string, 0, len(events))
158+
for _, event := range events {
159+
collectedEvents = append(collectedEvents, fmt.Sprintf("%#v", event))
160+
}
161+
t.Fatalf("Expected %d number of failed events from pipelinerun but got %d; list of received events : %s", expectedNumberOfEvents, len(events), strings.Join(collectedEvents, ", "))
162+
}
163+
matchKinds = map[string][]string{"TaskRun": trName}
164+
// Expected failure events: 1 for each TaskRun
165+
expectedNumberOfEvents = len(trName)
166+
t.Logf("Making sure %d events were created from taskruns with kinds %v", expectedNumberOfEvents, matchKinds)
167+
events, err = collectMatchingEvents(ctx, c.KubeClient, namespace, matchKinds, "Failed")
168+
if err != nil {
169+
t.Fatalf("Failed to collect matching events: %q", err)
170+
}
171+
if len(events) < expectedNumberOfEvents {
172+
collectedEvents := make([]string, 0, len(events))
173+
for _, event := range events {
174+
collectedEvents = append(collectedEvents, fmt.Sprintf("%#v", event))
162175
}
163-
t.Fatalf("Expected %d number of successful events from pipelinerun and taskrun but got %d; list of received events : %#v", expectedNumberOfEvents, len(events), collectedEvents)
176+
t.Fatalf("Expected %d number of failed events from taskrun but got %d; list of received events : %s", expectedNumberOfEvents, len(events), strings.Join(collectedEvents, ", "))
164177
}
165178
})
166179
}

0 commit comments

Comments
 (0)