github.com/Azure/aad-pod-identity@v1.8.17/pkg/auth/errors_test.go (about)

     1  package auth
     2  
     3  import (
     4  	"errors"
     5  	"testing"
     6  
     7  	"github.com/Azure/go-autorest/autorest/adal"
     8  )
     9  
    10  type testError struct {
    11  	adal.TokenRefreshError
    12  }
    13  
    14  func TestIsTokenRefreshError(t *testing.T) {
    15  	tests := []struct {
    16  		name string
    17  		err  error
    18  		want bool
    19  	}{
    20  		{
    21  			name: "not a token refresh error",
    22  			err:  errors.New("some error"),
    23  		},
    24  		{
    25  			name: "token refresh error",
    26  			err:  testError{},
    27  			want: true,
    28  		},
    29  	}
    30  
    31  	for _, tt := range tests {
    32  		t.Run(tt.name, func(t *testing.T) {
    33  			got := IsTokenRefreshError(tt.err)
    34  			if got != tt.want {
    35  				t.Errorf("IsTokenRefreshError() = %v, want %v", got, tt.want)
    36  			}
    37  		})
    38  	}
    39  }
    40  
    41  func TestIsHealthCheckError(t *testing.T) {
    42  	tests := []struct {
    43  		name string
    44  		err  error
    45  		want bool
    46  	}{
    47  		{
    48  			name: "health check error",
    49  			err:  errors.New("some error"),
    50  			want: true,
    51  		},
    52  		{
    53  			name: "not health check error",
    54  			err:  testError{},
    55  			want: false,
    56  		},
    57  	}
    58  
    59  	for _, tt := range tests {
    60  		t.Run(tt.name, func(t *testing.T) {
    61  			got := IsHealthCheckError(tt.err)
    62  			if got != tt.want {
    63  				t.Errorf("IsHealthCheckError() = %v, want %v", got, tt.want)
    64  			}
    65  		})
    66  	}
    67  }