Skip to content

Commit ff84625

Browse files
committed
fix: fix checking number of events in gitea tests
* Added ExpectEventsNumber field to TestOpts structure to allow tests to specify the exact number of expected events * Modified test validation logic to check for the exact number of events instead of just checking for zero events * Enhanced error reporting to show detailed event information when the expected number doesn't match * Updated TestGiteaParamsChangedFilesCEL to use the new field Signed-off-by: Chmouel Boudjnah <chmouel@redhat.com>
1 parent bd7e639 commit ff84625

File tree

2 files changed

+18
-4
lines changed

2 files changed

+18
-4
lines changed

test/gitea_params_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -406,8 +406,9 @@ func TestGiteaParamsChangedFilesCEL(t *testing.T) {
406406
"modified.txt": "testdata/changed_files_modified",
407407
"renamed.txt": "testdata/changed_files_renamed",
408408
},
409-
CheckForStatus: "success",
410-
ExpectEvents: false,
409+
CheckForStatus: "success",
410+
ExpectEvents: false,
411+
ExpectEventsNumber: 1,
411412
FileChanges: []scm.FileChange{
412413
{
413414
FileName: "deleted.txt",

test/pkg/gitea/test.go

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,12 @@ import (
2727
v1 "github.com/tektoncd/pipeline/pkg/apis/pipeline/v1"
2828
"github.com/tektoncd/pipeline/pkg/names"
2929
"gotest.tools/v3/assert"
30+
corev1 "k8s.io/api/core/v1"
3031
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3132
)
3233

3334
type TestOpts struct {
35+
ExpectEventsNumber int
3436
TargetRepoName string
3537
StatusOnlyLatest bool
3638
OnOrg bool
@@ -72,6 +74,17 @@ func PostCommentOnPullRequest(t *testing.T, topt *TestOpts, body string) {
7274
assert.NilError(t, err)
7375
}
7476

77+
func checkEvents(t *testing.T, events *corev1.EventList, topts *TestOpts) {
78+
if len(events.Items) != topts.ExpectEventsNumber {
79+
topts.ParamsRun.Clients.Log.Infof("%d events expected in case of failure but got %d", topts.ExpectEventsNumber, len(events.Items))
80+
for event := range events.Items {
81+
em := events.Items[event]
82+
topts.ParamsRun.Clients.Log.Infof("Event: Reason: %s Type: %s ReportingInstance: %s Message: %s", em.Reason, em.Type, em.ReportingInstance, em.Message)
83+
}
84+
t.Fail()
85+
}
86+
}
87+
7588
func AddLabelToIssue(t *testing.T, topt *TestOpts, label string) {
7689
var targetID int64
7790
allLabels, _, err := topt.GiteaCNX.Client.ListRepoLabels(topt.Opts.Organization, topt.Opts.Repo, gitea.ListLabelsOptions{})
@@ -249,7 +262,7 @@ func TestPR(t *testing.T, topts *TestOpts) (context.Context, func()) {
249262
}
250263
assert.Assert(t, len(events.Items) != 0, "events expected in case of failure but got 0")
251264
} else if !topts.SkipEventsCheck {
252-
assert.Assert(t, len(events.Items) == 0, fmt.Sprintf("no events expected but got %v in %v ns, items: %+v", len(events.Items), topts.TargetNS, events.Items))
265+
checkEvents(t, events, topts)
253266
}
254267
return ctx, cleanup
255268
}
@@ -369,7 +382,7 @@ func NewPR(t *testing.T, topts *TestOpts) func() {
369382
}
370383
assert.Assert(t, len(events.Items) != 0, "events expected in case of failure but got 0")
371384
} else if !topts.SkipEventsCheck {
372-
assert.Assert(t, len(events.Items) == 0, fmt.Sprintf("no events expected but got %v in %v ns, items: %+v", len(events.Items), topts.TargetNS, events.Items))
385+
checkEvents(t, events, topts)
373386
}
374387
return cleanup
375388
}

0 commit comments

Comments
 (0)