github.com/anthropics/anthropic-sdk-go@v1.70.1/betaorganizationexternalkey_test.go (about)

     1  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
     2  
     3  package anthropic_test
     4  
     5  import (
     6  	"context"
     7  	"errors"
     8  	"os"
     9  	"testing"
    10  
    11  	"github.com/anthropics/anthropic-sdk-go"
    12  	"github.com/anthropics/anthropic-sdk-go/internal/testutil"
    13  	"github.com/anthropics/anthropic-sdk-go/option"
    14  )
    15  
    16  func TestBetaOrganizationExternalKeyNewWithOptionalParams(t *testing.T) {
    17  	baseURL := "http://localhost:4010"
    18  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
    19  		baseURL = envURL
    20  	}
    21  	if !testutil.CheckTestServer(t, baseURL) {
    22  		return
    23  	}
    24  	client := anthropic.NewClient(
    25  		option.WithBaseURL(baseURL),
    26  		option.WithAPIKey("my-anthropic-api-key"),
    27  	)
    28  	_, err := client.Beta.Organization.ExternalKeys.New(context.TODO(), anthropic.BetaOrganizationExternalKeyNewParams{
    29  		ProviderConfig: anthropic.BetaOrganizationExternalKeyNewParamsProviderConfigUnion{
    30  			OfAWS: &anthropic.BetaAWSExternalKeyConfigParam{
    31  				KMSARN:  "arn:aws:kms:us-east-1:111122223333:key/abcd1234-5678-90ab-cdef-000011112222",
    32  				Region:  anthropic.String("us-east-1"),
    33  				RoleARN: anthropic.String("arn:aws:iam::111122223333:role/anthropic-cmek"),
    34  			},
    35  		},
    36  		DisplayName: anthropic.String("x"),
    37  		Geo:         anthropic.BetaOrganizationExternalKeyNewParamsGeoUs,
    38  	})
    39  	if err != nil {
    40  		var apierr *anthropic.Error
    41  		if errors.As(err, &apierr) {
    42  			t.Log(string(apierr.DumpRequest(true)))
    43  		}
    44  		t.Fatalf("err should be nil: %s", err.Error())
    45  	}
    46  }
    47  
    48  func TestBetaOrganizationExternalKeyGet(t *testing.T) {
    49  	baseURL := "http://localhost:4010"
    50  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
    51  		baseURL = envURL
    52  	}
    53  	if !testutil.CheckTestServer(t, baseURL) {
    54  		return
    55  	}
    56  	client := anthropic.NewClient(
    57  		option.WithBaseURL(baseURL),
    58  		option.WithAPIKey("my-anthropic-api-key"),
    59  	)
    60  	_, err := client.Beta.Organization.ExternalKeys.Get(context.TODO(), "external_key_id")
    61  	if err != nil {
    62  		var apierr *anthropic.Error
    63  		if errors.As(err, &apierr) {
    64  			t.Log(string(apierr.DumpRequest(true)))
    65  		}
    66  		t.Fatalf("err should be nil: %s", err.Error())
    67  	}
    68  }
    69  
    70  func TestBetaOrganizationExternalKeyUpdateWithOptionalParams(t *testing.T) {
    71  	baseURL := "http://localhost:4010"
    72  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
    73  		baseURL = envURL
    74  	}
    75  	if !testutil.CheckTestServer(t, baseURL) {
    76  		return
    77  	}
    78  	client := anthropic.NewClient(
    79  		option.WithBaseURL(baseURL),
    80  		option.WithAPIKey("my-anthropic-api-key"),
    81  	)
    82  	_, err := client.Beta.Organization.ExternalKeys.Update(
    83  		context.TODO(),
    84  		"external_key_id",
    85  		anthropic.BetaOrganizationExternalKeyUpdateParams{
    86  			DisplayName: anthropic.String("x"),
    87  			Geo:         anthropic.BetaOrganizationExternalKeyUpdateParamsGeoUs,
    88  			ProviderConfig: anthropic.BetaOrganizationExternalKeyUpdateParamsProviderConfigUnion{
    89  				OfAWS: &anthropic.BetaAWSExternalKeyConfigParam{
    90  					KMSARN:  "arn:aws:kms:us-east-1:111122223333:key/abcd1234-5678-90ab-cdef-000011112222",
    91  					Region:  anthropic.String("us-east-1"),
    92  					RoleARN: anthropic.String("arn:aws:iam::111122223333:role/anthropic-cmek"),
    93  				},
    94  			},
    95  		},
    96  	)
    97  	if err != nil {
    98  		var apierr *anthropic.Error
    99  		if errors.As(err, &apierr) {
   100  			t.Log(string(apierr.DumpRequest(true)))
   101  		}
   102  		t.Fatalf("err should be nil: %s", err.Error())
   103  	}
   104  }
   105  
   106  func TestBetaOrganizationExternalKeyListWithOptionalParams(t *testing.T) {
   107  	baseURL := "http://localhost:4010"
   108  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
   109  		baseURL = envURL
   110  	}
   111  	if !testutil.CheckTestServer(t, baseURL) {
   112  		return
   113  	}
   114  	client := anthropic.NewClient(
   115  		option.WithBaseURL(baseURL),
   116  		option.WithAPIKey("my-anthropic-api-key"),
   117  	)
   118  	_, err := client.Beta.Organization.ExternalKeys.List(context.TODO(), anthropic.BetaOrganizationExternalKeyListParams{
   119  		Limit: anthropic.Int(1),
   120  		Page:  anthropic.String("page"),
   121  	})
   122  	if err != nil {
   123  		var apierr *anthropic.Error
   124  		if errors.As(err, &apierr) {
   125  			t.Log(string(apierr.DumpRequest(true)))
   126  		}
   127  		t.Fatalf("err should be nil: %s", err.Error())
   128  	}
   129  }
   130  
   131  func TestBetaOrganizationExternalKeyDelete(t *testing.T) {
   132  	baseURL := "http://localhost:4010"
   133  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
   134  		baseURL = envURL
   135  	}
   136  	if !testutil.CheckTestServer(t, baseURL) {
   137  		return
   138  	}
   139  	client := anthropic.NewClient(
   140  		option.WithBaseURL(baseURL),
   141  		option.WithAPIKey("my-anthropic-api-key"),
   142  	)
   143  	_, err := client.Beta.Organization.ExternalKeys.Delete(context.TODO(), "external_key_id")
   144  	if err != nil {
   145  		var apierr *anthropic.Error
   146  		if errors.As(err, &apierr) {
   147  			t.Log(string(apierr.DumpRequest(true)))
   148  		}
   149  		t.Fatalf("err should be nil: %s", err.Error())
   150  	}
   151  }
   152  
   153  func TestBetaOrganizationExternalKeyValidate(t *testing.T) {
   154  	baseURL := "http://localhost:4010"
   155  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
   156  		baseURL = envURL
   157  	}
   158  	if !testutil.CheckTestServer(t, baseURL) {
   159  		return
   160  	}
   161  	client := anthropic.NewClient(
   162  		option.WithBaseURL(baseURL),
   163  		option.WithAPIKey("my-anthropic-api-key"),
   164  	)
   165  	_, err := client.Beta.Organization.ExternalKeys.Validate(context.TODO(), "external_key_id")
   166  	if err != nil {
   167  		var apierr *anthropic.Error
   168  		if errors.As(err, &apierr) {
   169  			t.Log(string(apierr.DumpRequest(true)))
   170  		}
   171  		t.Fatalf("err should be nil: %s", err.Error())
   172  	}
   173  }