Skip to content

Commit 1d51ba4

Browse files
committed
refactor: add ExpectEventsNumber param and improve test output
* Added ExpectEventsNumber field to TestOpts struct to allow for specific number of expected events * Fixed range loops to use idiomatic Go syntax (range without index when unused) * Enhanced event logging to provide more details on test failures * Updated tests to use the new ExpectEventsNumber parameter
1 parent 96befb8 commit 1d51ba4

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
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: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import (
3131
)
3232

3333
type TestOpts struct {
34+
ExpectEventsNumber int
3435
TargetRepoName string
3536
StatusOnlyLatest bool
3637
OnOrg bool
@@ -202,7 +203,7 @@ func TestPR(t *testing.T, topts *TestOpts) (context.Context, func()) {
202203
topts.SHA = scm.PushFilesToRefGit(t, scmOpts, entries)
203204

204205
topts.ParamsRun.Clients.Log.Infof("Creating PullRequest")
205-
for i := 0; i < 5; i++ {
206+
for i := range 5 {
206207
if topts.PullRequest, _, err = topts.GiteaCNX.Client.CreatePullRequest(topts.Opts.Organization, repoInfo.Name, gitea.CreatePullRequestOption{
207208
Title: "Test Pull Request - " + topts.TargetRefName,
208209
Head: topts.TargetRefName,
@@ -356,7 +357,7 @@ func NewPR(t *testing.T, topts *TestOpts) func() {
356357
// so adds a sleep for that case eg. TestGiteaBadYaml
357358
if len(events.Items) == 0 {
358359
// loop 30 times over a 5 second period and try to get any events
359-
for i := 0; i < 30; i++ {
360+
for range 30 {
360361
events, err = topts.ParamsRun.Clients.Kube.CoreV1().Events(topts.TargetNS).List(ctx, metav1.ListOptions{
361362
LabelSelector: fmt.Sprintf("%s=%s", keys.Repository, formatting.CleanValueKubernetes(topts.TargetNS)),
362363
})
@@ -369,7 +370,14 @@ func NewPR(t *testing.T, topts *TestOpts) func() {
369370
}
370371
assert.Assert(t, len(events.Items) != 0, "events expected in case of failure but got 0")
371372
} else if !topts.SkipEventsCheck {
372-
assert.Assert(t, len(events.Items) == 1, fmt.Sprintf("no events expected but got %v in %v ns, items: %+v", len(events.Items), topts.TargetNS, events.Items))
373+
if len(events.Items) != topts.ExpectEventsNumber {
374+
topts.ParamsRun.Clients.Log.Infof("%d events expected in case of failure but got %d", topts.ExpectEventsNumber, len(events.Items))
375+
for event := range events.Items {
376+
em := events.Items[event]
377+
topts.ParamsRun.Clients.Log.Infof("Event: Reason: %s Type: %s ReportingInstance: %s Message: %s", em.Reason, em.Type, em.ReportingInstance, em.Message)
378+
}
379+
t.Fail()
380+
}
373381
}
374382
return cleanup
375383
}

0 commit comments

Comments
 (0)