github.com/clerkinc/clerk-sdk-go@v1.49.1/clerk/clerk_options_test.go (about)

     1  package clerk
     2  
     3  import (
     4  	"net/http"
     5  	"testing"
     6  	"time"
     7  )
     8  
     9  func TestWithHTTPClient(t *testing.T) {
    10  	expectedHTTPClient := &http.Client{Timeout: time.Second * 10}
    11  
    12  	got, err := NewClient("token", WithHTTPClient(expectedHTTPClient))
    13  	if err != nil {
    14  		t.Fatal(err)
    15  	}
    16  
    17  	if got.(*client).client != expectedHTTPClient {
    18  		t.Fatalf("Expected the http client to have been overriden")
    19  	}
    20  }
    21  
    22  func TestWithHTTPClientNil(t *testing.T) {
    23  	_, err := NewClient("token", WithHTTPClient(nil))
    24  	if err == nil {
    25  		t.Fatalf("Expected an error with a nil http client provided")
    26  	}
    27  }
    28  
    29  func TestWithBaseURL(t *testing.T) {
    30  	expectedBaseURL := "https://api.example.com/"
    31  
    32  	got, err := NewClient("token", WithBaseURL(expectedBaseURL))
    33  	if err != nil {
    34  		t.Fatal(err)
    35  	}
    36  
    37  	if got.(*client).baseURL.String() != expectedBaseURL {
    38  		t.Fatalf("Expected the base URL to have been overriden")
    39  	}
    40  }
    41  
    42  func TestWithBaseURLEmpty(t *testing.T) {
    43  	_, err := NewClient("token", WithBaseURL(""))
    44  	if err == nil {
    45  		t.Fatalf("Expected an error with an empty base URL provided")
    46  	}
    47  }
    48  
    49  func TestWithBaseURLInvalid(t *testing.T) {
    50  	invalidBaseURL := "https:// api.example.com"
    51  
    52  	_, err := NewClient("token", WithBaseURL(invalidBaseURL))
    53  	if err == nil {
    54  		t.Fatalf("Expected an error with an invalid base URL provided")
    55  	}
    56  }