Fix the dependency issue (#231)

This commit is contained in:
Robbie Zhang
2018-06-21 12:09:42 -07:00
committed by GitHub
parent 027b76651d
commit 6ec1098bb8
16629 changed files with 74837 additions and 4975021 deletions

View File

@@ -57,15 +57,8 @@ func NewBackoffConfig() *BackoffConfig {
// Do retries the given function until defaultMaxInterval time passes, while sleeping some time between unsuccessful attempts
// if retryOnError returns true, continue retry, otherwise, return error
func Do(operation func() error, retryOnError func(err error) bool) error {
bConf := &BackoffConfig{
InitialInterval: defaultInitialInterval,
RandomizationFactor: defaultRandomizationFactor,
Multiplier: defaultMultiplier,
MaxInterval: defaultMaxInterval,
MaxElapsedTime: defaultMaxElapsedTime,
}
return DoWithConfig(operation, retryOnError, bConf)
conf := NewBackoffConfig()
return DoWithConfig(operation, retryOnError, conf)
}
// DoWithConfig will attempt an operation while retrying using an exponential back off based on the config supplied by the caller. The retry decider is the supplied function retryOnError

View File

@@ -1,41 +0,0 @@
// Copyright 2016 VMware, Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package retry
import (
"fmt"
"testing"
"time"
"github.com/stretchr/testify/assert"
)
func TestRetry(t *testing.T) {
i := 0
operation := func() error {
i++
t.Logf("Retry called: %s", time.Now().UTC())
return fmt.Errorf("designed error")
}
retryOnError := func(err error) bool {
if i < 4 {
return true
}
return false
}
err := Do(operation, retryOnError)
assert.True(t, i == 4, "should retried 4 times")
assert.True(t, err != nil, fmt.Sprintf("retry do not depend on error status"))
}