All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#509 Reviewed-on: coop-cloud/abra#399 Reviewed-by: decentral1se <decentral1se@noreply.git.coopcloud.tech> Co-authored-by: p4u1 <p4u1_f4u1@riseup.net> Co-committed-by: p4u1 <p4u1_f4u1@riseup.net>
27 lines
458 B
Go
27 lines
458 B
Go
package app
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
)
|
|
|
|
func TestRetryFunc(t *testing.T) {
|
|
err := retryFunc(1, func() error { return nil })
|
|
if err != nil {
|
|
t.Errorf("should not return an error: %s", err)
|
|
}
|
|
|
|
i := 0
|
|
fn := func() error {
|
|
i++
|
|
return fmt.Errorf("oh no, something went wrong!")
|
|
}
|
|
err = retryFunc(2, fn)
|
|
if err == nil {
|
|
t.Error("should return an error")
|
|
}
|
|
if i != 2 {
|
|
t.Errorf("The function should have been called 1 times, got %d", i)
|
|
}
|
|
}
|