Skip to content

Commit

Permalink
update tests
Browse files Browse the repository at this point in the history
  • Loading branch information
kamilsk committed Feb 13, 2019
1 parent a3ce426 commit dab0997
Show file tree
Hide file tree
Showing 262 changed files with 81,050 additions and 12,842 deletions.
12 changes: 6 additions & 6 deletions backoff/backoff_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@ import (
"testing"
"time"

"github.com/kamilsk/retry/v3/backoff"
. "github.com/kamilsk/retry/v3/backoff"
)

func TestIncremental(t *testing.T) {
const duration = time.Millisecond
const increment = time.Nanosecond

algorithm := backoff.Incremental(duration, increment)
algorithm := Incremental(duration, increment)

for i := uint(0); i < 10; i++ {
result := algorithm(i)
Expand All @@ -27,7 +27,7 @@ func TestIncremental(t *testing.T) {
func TestLinear(t *testing.T) {
const duration = time.Millisecond

algorithm := backoff.Linear(duration)
algorithm := Linear(duration)

for i := uint(0); i < 10; i++ {
result := algorithm(i)
Expand All @@ -43,7 +43,7 @@ func TestExponential(t *testing.T) {
const duration = time.Second
const base = 3

algorithm := backoff.Exponential(duration, base)
algorithm := Exponential(duration, base)

for i := uint(0); i < 10; i++ {
result := algorithm(i)
Expand All @@ -58,7 +58,7 @@ func TestExponential(t *testing.T) {
func TestBinaryExponential(t *testing.T) {
const duration = time.Second

algorithm := backoff.BinaryExponential(duration)
algorithm := BinaryExponential(duration)

for i := uint(0); i < 10; i++ {
result := algorithm(i)
Expand All @@ -74,7 +74,7 @@ func TestFibonacci(t *testing.T) {
const duration = time.Millisecond
sequence := []uint{0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233}

algorithm := backoff.Fibonacci(duration)
algorithm := Fibonacci(duration)

for i := uint(0); i < 10; i++ {
result := algorithm(i)
Expand Down
12 changes: 6 additions & 6 deletions channel_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@ import (
"testing"
"time"

"github.com/kamilsk/retry/v3"
. "github.com/kamilsk/retry/v3"
)

func TestMultiplex(t *testing.T) {
sleep := 100 * time.Millisecond

start := time.Now()
<-retry.Multiplex(retry.WithSignal(os.Interrupt), retry.WithTimeout(sleep))
<-Multiplex(WithSignal(os.Interrupt), WithTimeout(sleep))
end := time.Now()

if expected, obtained := sleep, end.Sub(start); expected > obtained {
Expand All @@ -21,7 +21,7 @@ func TestMultiplex(t *testing.T) {
}

func TestMultiplex_WithoutChannels(t *testing.T) {
<-retry.Multiplex()
<-Multiplex()
}

func TestWithDeadline(t *testing.T) {
Expand All @@ -34,7 +34,7 @@ func TestWithDeadline(t *testing.T) {
}
for _, test := range tests {
start := time.Now()
<-retry.WithDeadline(start.Add(test.deadline))
<-WithDeadline(start.Add(test.deadline))
end := time.Now()

if !end.After(start.Add(test.deadline)) {
Expand All @@ -44,14 +44,14 @@ func TestWithDeadline(t *testing.T) {
}

func TestWithSignal_NilSignal(t *testing.T) {
<-retry.WithSignal(nil)
<-WithSignal(nil)
}

func TestWithTimeout(t *testing.T) {
sleep := 100 * time.Millisecond

start := time.Now()
<-retry.WithTimeout(sleep)
<-WithTimeout(sleep)
end := time.Now()

if expected, obtained := sleep, end.Sub(start); expected > obtained {
Expand Down
10 changes: 5 additions & 5 deletions classifier/blacklist_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,25 @@ import (
"errors"
"testing"

"github.com/kamilsk/retry/v3/classifier"
. "github.com/kamilsk/retry/v3/classifier"
)

func TestBlacklistClassifier_Classify(t *testing.T) {
var (
errInBlacklist = errors.New("is in blacklist")
errNotInBlacklist = errors.New("is not in blacklist")
)
list := classifier.BlacklistClassifier([]error{errInBlacklist})
list := BlacklistClassifier([]error{errInBlacklist})

if list.Classify(nil) != classifier.Succeed {
if list.Classify(nil) != Succeed {
t.Error("succeed is expected")
}

if list.Classify(errNotInBlacklist) != classifier.Retry {
if list.Classify(errNotInBlacklist) != Retry {
t.Error("retry is expected")
}

if list.Classify(errInBlacklist) != classifier.Fail {
if list.Classify(errInBlacklist) != Fail {
t.Error("fail is expected")
}
}
8 changes: 4 additions & 4 deletions classifier/classifier_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@ import (
"errors"
"testing"

"github.com/kamilsk/retry/v3/classifier"
. "github.com/kamilsk/retry/v3/classifier"
)

func TestDefaultClassifier_Classify(t *testing.T) {
defaultClassifier := classifier.DefaultClassifier{}
defaultClassifier := DefaultClassifier{}

if defaultClassifier.Classify(nil) != classifier.Succeed {
if defaultClassifier.Classify(nil) != Succeed {
t.Error("succeed is expected")
}

if defaultClassifier.Classify(errors.New("error")) != classifier.Retry {
if defaultClassifier.Classify(errors.New("error")) != Retry {
t.Error("retry is expected")
}
}
24 changes: 12 additions & 12 deletions classifier/functional_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,35 +6,35 @@ import (
"net"
"testing"

"github.com/kamilsk/retry/v3/classifier"
. "github.com/kamilsk/retry/v3/classifier"
)

func TestFunctionalClassifier_Classify(t *testing.T) {
var (
errClassified = &json.SyntaxError{}
errNotClassified = errors.New("is unknown error")
jsonErrorClassifier = classifier.FunctionalClassifier(func(err error) classifier.Action {
jsonErrorClassifier = FunctionalClassifier(func(err error) Action {
if err == nil {
return classifier.Succeed
return Succeed
}

if _, is := err.(*json.SyntaxError); is {
return classifier.Retry
return Retry
}

return classifier.Unknown
return Unknown
})
)

if jsonErrorClassifier.Classify(nil) != classifier.Succeed {
if jsonErrorClassifier.Classify(nil) != Succeed {
t.Error("succeed is expected")
}

if jsonErrorClassifier.Classify(errClassified) != classifier.Retry {
if jsonErrorClassifier.Classify(errClassified) != Retry {
t.Error("retry is expected")
}

if jsonErrorClassifier.Classify(errNotClassified) != classifier.Unknown {
if jsonErrorClassifier.Classify(errNotClassified) != Unknown {
t.Error("unknown is expected")
}
}
Expand All @@ -46,19 +46,19 @@ func TestFunctionalClassifier_NetworkErrorClassifier_Classify(t *testing.T) {
errOther = errors.New("is not network error")
)

if classifier.NetworkErrorClassifier.Classify(nil) != classifier.Succeed {
if NetworkErrorClassifier.Classify(nil) != Succeed {
t.Error("succeed is expected")
}

if classifier.NetworkErrorClassifier.Classify(errNetworkTimeout) != classifier.Retry {
if NetworkErrorClassifier.Classify(errNetworkTimeout) != Retry {
t.Error("retry is expected")
}

if classifier.NetworkErrorClassifier.Classify(errNetworkOther) != classifier.Fail {
if NetworkErrorClassifier.Classify(errNetworkOther) != Fail {
t.Error("fail is expected")
}

if classifier.NetworkErrorClassifier.Classify(errOther) != classifier.Unknown {
if NetworkErrorClassifier.Classify(errOther) != Unknown {
t.Error("unknown is expected")
}
}
10 changes: 5 additions & 5 deletions classifier/whitelist_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,25 @@ import (
"errors"
"testing"

"github.com/kamilsk/retry/v3/classifier"
. "github.com/kamilsk/retry/v3/classifier"
)

func TestWhitelistClassifier_Classify(t *testing.T) {
var (
errInWhitelist = errors.New("is in blacklist")
errNotInWhitelist = errors.New("is not in blacklist")
)
list := classifier.WhitelistClassifier([]error{errInWhitelist})
list := WhitelistClassifier([]error{errInWhitelist})

if list.Classify(nil) != classifier.Succeed {
if list.Classify(nil) != Succeed {
t.Error("succeed is expected")
}

if list.Classify(errNotInWhitelist) != classifier.Fail {
if list.Classify(errNotInWhitelist) != Fail {
t.Error("fail is expected")
}

if list.Classify(errInWhitelist) != classifier.Retry {
if list.Classify(errInWhitelist) != Retry {
t.Error("retry is expected")
}
}
18 changes: 8 additions & 10 deletions cmd/retry/go.mod
Original file line number Diff line number Diff line change
@@ -1,14 +1,12 @@
module github.com/kamilsk/retry/cli

require (
github.com/briandowns/spinner v0.0.0-20170614154858-48dbb65d7bd5
github.com/davecgh/go-spew v1.1.0 // indirect
github.com/fatih/color v1.6.0
github.com/kamilsk/retry/v3 v3.4.0
github.com/mattn/go-colorable v0.0.9 // indirect
github.com/mattn/go-isatty v0.0.3 // indirect
github.com/pkg/errors v0.8.0
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/stretchr/testify v1.2.1
golang.org/x/sys v0.0.0-20180302081741-dd2ff4accc09 // indirect
github.com/briandowns/spinner v0.0.0-20190212173954-5cf08d0ac778
github.com/fatih/color v1.7.0
github.com/kamilsk/retry/v3 v3.4.1
github.com/mattn/go-colorable v0.1.0 // indirect
github.com/mattn/go-isatty v0.0.4 // indirect
github.com/pkg/errors v0.8.1
github.com/stretchr/testify v1.3.0
golang.org/x/sys v0.0.0-20190209173611-3b5209105503 // indirect
)
33 changes: 17 additions & 16 deletions cmd/retry/go.sum
Original file line number Diff line number Diff line change
@@ -1,20 +1,21 @@
github.com/briandowns/spinner v0.0.0-20170614154858-48dbb65d7bd5 h1:osZyZB7J4kE1tKLeaUjV6+uZVBfS835T0I/RxmwWw1w=
github.com/briandowns/spinner v0.0.0-20170614154858-48dbb65d7bd5/go.mod h1:hw/JEQBIE+c/BLI4aKM8UU8v+ZqrD3h7HC27kKt8JQU=
github.com/briandowns/spinner v0.0.0-20190212173954-5cf08d0ac778 h1:Dmz6bJXocvwkw7BOz4jpyVZReGrkjs+fBDWKn5tBES4=
github.com/briandowns/spinner v0.0.0-20190212173954-5cf08d0ac778/go.mod h1:hw/JEQBIE+c/BLI4aKM8UU8v+ZqrD3h7HC27kKt8JQU=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fatih/color v1.6.0 h1:66qjqZk8kalYAvDRtM1AdAJQI0tj4Wrue3Eq3B3pmFU=
github.com/fatih/color v1.6.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
github.com/kamilsk/retry/v3 v3.4.0 h1:JIseUoPh6vobwtHt0CWfNAs1UDnpZsN2hMS0km3LlBI=
github.com/kamilsk/retry/v3 v3.4.0/go.mod h1:4aG7zHzQa5sg2zzm7r0bIFu3hBA+x7kRpxs5cJQg/x8=
github.com/mattn/go-colorable v0.0.9 h1:UVL0vNpWh04HeJXV0KLcaT7r06gOH2l4OW6ddYRUIY4=
github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
github.com/mattn/go-isatty v0.0.3 h1:ns/ykhmWi7G9O+8a448SecJU3nSMBXJfqQkl0upE1jI=
github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/fatih/color v1.7.0 h1:DkWD4oS2D8LGGgTQ6IvwJJXSL5Vp2ffcQg58nFV38Ys=
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
github.com/kamilsk/retry/v3 v3.4.1 h1:zooUg2eL6TG5i0UMl3qSOZTnS6a+0ff9ur6pw/+eap8=
github.com/kamilsk/retry/v3 v3.4.1/go.mod h1:4aG7zHzQa5sg2zzm7r0bIFu3hBA+x7kRpxs5cJQg/x8=
github.com/mattn/go-colorable v0.1.0 h1:v2XXALHHh6zHfYTJ+cSkwtyffnaOyR1MXaA91mTrb8o=
github.com/mattn/go-colorable v0.1.0/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
github.com/mattn/go-isatty v0.0.4 h1:bnP0vzxcAdeI1zdubAl5PjU6zsERjGZb7raWodagDYs=
github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I=
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/testify v1.2.1 h1:52QO5WkIUcHGIR7EnGagH88x1bUzqGXTC5/1bDTUQ7U=
github.com/stretchr/testify v1.2.1/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
golang.org/x/sys v0.0.0-20180302081741-dd2ff4accc09 h1:wNPZbZUOH0tyqngVRXeF2iQm19+ssqyebJTCFBvxsow=
golang.org/x/sys v0.0.0-20180302081741-dd2ff4accc09/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
golang.org/x/sys v0.0.0-20190209173611-3b5209105503 h1:5SvYFrOM3W8Mexn9/oA44Ji7vhXAZQ9hiP+1Q/DMrWg=
golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=

0 comments on commit dab0997

Please sign in to comment.