forked from toolshed/abra
		
	
		
			
				
	
	
		
			27 lines
		
	
	
		
			461 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			461 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package client
 | |
| 
 | |
| 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)
 | |
| 	}
 | |
| }
 |