Skip to content

Commit

Permalink
Harmonise function signatures in test code
Browse files Browse the repository at this point in the history
Based on feedback in #538, harmonise function signatures to better match.
  • Loading branch information
HeavyWombat committed Jan 21, 2021
1 parent 1be85e3 commit 4bc04b2
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 62 deletions.
43 changes: 24 additions & 19 deletions test/integration/buildruns_to_taskruns_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -250,18 +250,21 @@ var _ = Describe("Integration tests BuildRuns and TaskRuns", func() {
_, err = tb.GetBRTillStartTime(buildRunObject.Name)
Expect(err).To(BeNil())

actualReason, err := tb.GetTRTillDesiredReason(buildRunObject.Name, "Pending")
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", "Pending", actualReason))
expectedReason := "Pending"
actualReason, err := tb.GetTRTillDesiredReason(buildRunObject.Name, expectedReason)
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", expectedReason, actualReason))

err = tb.GetBRTillDesiredReason(buildRunObject.Name, "Pending")
Expect(err).To(BeNil())

actualReason, err = tb.GetTRTillDesiredReason(buildRunObject.Name, "Running")
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", "Running", actualReason))
expectedReason = "Pending"
actualReason, err = tb.GetBRTillDesiredReason(buildRunObject.Name, expectedReason)
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", expectedReason, actualReason))

err = tb.GetBRTillDesiredReason(buildRunObject.Name, "Running")
Expect(err).To(BeNil())
expectedReason = "Running"
actualReason, err = tb.GetTRTillDesiredReason(buildRunObject.Name, expectedReason)
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", expectedReason, actualReason))

expectedReason = "Running"
actualReason, err = tb.GetBRTillDesiredReason(buildRunObject.Name, expectedReason)
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", expectedReason, actualReason))
})
})

Expand All @@ -281,19 +284,20 @@ var _ = Describe("Integration tests BuildRuns and TaskRuns", func() {
_, err = tb.GetBRTillCompletion(buildRunObject.Name)
Expect(err).To(BeNil())

actualReason, err := tb.GetTRTillDesiredReason(buildRunObject.Name, "TaskRunTimeout")
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", "TaskRunTimeout", actualReason))
expectedReason := "TaskRunTimeout"
actualReason, err := tb.GetTRTillDesiredReason(buildRunObject.Name, expectedReason)
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", expectedReason, actualReason))

tr, err := tb.GetTaskRunFromBuildRun(buildRunObject.Name)
Expect(err).To(BeNil())

err = tb.GetBRTillDesiredReason(buildRunObject.Name, fmt.Sprintf("TaskRun \"%s\" failed to finish within \"5s\"", tr.Name))
Expect(err).To(BeNil())
expectedReason = fmt.Sprintf("TaskRun \"%s\" failed to finish within \"5s\"", tr.Name)
actualReason, err = tb.GetBRTillDesiredReason(buildRunObject.Name, expectedReason)
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", expectedReason, actualReason))

tr, err = tb.GetTaskRunFromBuildRun(buildRunObject.Name)
Expect(err).To(BeNil())
Expect(tr.Status.CompletionTime).ToNot(BeNil())

})
})

Expand Down Expand Up @@ -352,12 +356,13 @@ var _ = Describe("Integration tests BuildRuns and TaskRuns", func() {
tr, err = tb.UpdateTaskRun(tr)
Expect(err).To(BeNil())

err = tb.GetBRTillDesiredReason(buildRunObject.Name, fmt.Sprintf("TaskRun \"%s\" was cancelled", tr.Name))
Expect(err).To(BeNil())

actualReason, err := tb.GetTRTillDesiredReason(buildRunObject.Name, "TaskRunCancelled")
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", "TaskRunCancelled", actualReason))
expectedReason := fmt.Sprintf("TaskRun \"%s\" was cancelled", tr.Name)
actualReason, err := tb.GetBRTillDesiredReason(buildRunObject.Name, expectedReason)
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", expectedReason, actualReason))

expectedReason = "TaskRunCancelled"
actualReason, err = tb.GetTRTillDesiredReason(buildRunObject.Name, expectedReason)
Expect(err).To(BeNil(), fmt.Sprintf("failed to get desired reason; expected %s, got %s", expectedReason, actualReason))
})
})
})
33 changes: 12 additions & 21 deletions test/integration/utils/buildruns.go
Original file line number Diff line number Diff line change
Expand Up @@ -123,30 +123,21 @@ func (t *TestBuild) GetBRTillStartTime(name string) (*v1alpha1.BuildRun, error)
}

// GetBRTillDesiredReason polls until a BuildRun gets a particular Reason
// it exit if an error happens or the timeout is reach
func (t *TestBuild) GetBRTillDesiredReason(buildRunname string, reason string) error {

var (
pollBRTillCompletion = func() (bool, error) {

currentReason, err := t.GetBRReason(buildRunname)
if err != nil {
return false, err
}
if currentReason == reason {
return true, nil
}

return false, nil
// it exit if an error happens or the timeout is reached
func (t *TestBuild) GetBRTillDesiredReason(buildRunname string, reason string) (currentReason string, err error) {
err = wait.PollImmediate(t.Interval, t.TimeOut, func() (bool, error) {
currentReason, err = t.GetBRReason(buildRunname)
if err != nil {
return false, err
}
if currentReason == reason {
return true, nil
}
)

err := wait.PollImmediate(t.Interval, t.TimeOut, pollBRTillCompletion)
if err != nil {
return err
}
return false, nil
})

return nil
return
}

// GetBRTillDeletion polls until a BuildRun is not found, it returns
Expand Down
33 changes: 11 additions & 22 deletions test/integration/utils/taskruns.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,30 +63,19 @@ func (t *TestBuild) GetTRReason(buildRunName string) (string, error) {

// GetTRTillDesiredReason polls until a TaskRun matches a desired Reason
// or it exits if an error happen or a timeout is reach.
func (t *TestBuild) GetTRTillDesiredReason(buildRunName string, reason string) (string, error) {
var trReason string
var err error

var (
pollTRTillCompletion = func() (bool, error) {

trReason, err = t.GetTRReason(buildRunName)
if err != nil {
return false, err
}

if trReason == reason {
return true, nil
}
func (t *TestBuild) GetTRTillDesiredReason(buildRunName string, reason string) (trReason string, err error) {
err = wait.PollImmediate(t.Interval, t.TimeOut, func() (bool, error) {
trReason, err = t.GetTRReason(buildRunName)
if err != nil {
return false, err
}

return false, nil
if trReason == reason {
return true, nil
}
)

pollError := wait.PollImmediate(t.Interval, t.TimeOut, pollTRTillCompletion)
if pollError != nil {
return trReason, pollError
}
return false, nil
})

return trReason, nil
return
}

0 comments on commit 4bc04b2

Please sign in to comment.