github.com/ssube/gitlab-ci-multi-runner@v1.2.1-0.20160607142738-b8d1285632e6/commands/helpers/retry_helper_test.go (about)

     1  package helpers
     2  
     3  import (
     4  	"errors"
     5  	"github.com/stretchr/testify/assert"
     6  	"testing"
     7  )
     8  
     9  func TestDoRetryError(t *testing.T) {
    10  	r := retryHelper{
    11  		Retry: 3,
    12  	}
    13  
    14  	retryCount := 0
    15  	err := r.doRetry(func() (bool, error) {
    16  		retryCount++
    17  		return true, errors.New("error")
    18  	})
    19  	assert.Error(t, err)
    20  	assert.Equal(t, r.Retry+1, retryCount)
    21  }
    22  
    23  func TestDoRetry(t *testing.T) {
    24  	r := retryHelper{
    25  		Retry: 3,
    26  	}
    27  
    28  	retryCount := 0
    29  	err := r.doRetry(func() (bool, error) {
    30  		retryCount++
    31  		return false, nil
    32  	})
    33  	assert.NoError(t, err)
    34  	assert.Equal(t, 1, retryCount)
    35  }