github.com/anthropics/anthropic-sdk-go@v1.70.1/betaenvironmentwork_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 TestBetaEnvironmentWorkGetWithOptionalParams(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.Environments.Work.Get(
    29  		context.TODO(),
    30  		"work_id",
    31  		anthropic.BetaEnvironmentWorkGetParams{
    32  			EnvironmentID: "env_011CZkZ9X2dpNyB7HsEFoRfW",
    33  			Betas:         []anthropic.AnthropicBeta{anthropic.AnthropicBetaMessageBatches2024_09_24},
    34  			WorkspaceID:   anthropic.String("wrkspc_011CZkZaBF1tNoB5wlCeusgy"),
    35  		},
    36  	)
    37  	if err != nil {
    38  		var apierr *anthropic.Error
    39  		if errors.As(err, &apierr) {
    40  			t.Log(string(apierr.DumpRequest(true)))
    41  		}
    42  		t.Fatalf("err should be nil: %s", err.Error())
    43  	}
    44  }
    45  
    46  func TestBetaEnvironmentWorkUpdateWithOptionalParams(t *testing.T) {
    47  	baseURL := "http://localhost:4010"
    48  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
    49  		baseURL = envURL
    50  	}
    51  	if !testutil.CheckTestServer(t, baseURL) {
    52  		return
    53  	}
    54  	client := anthropic.NewClient(
    55  		option.WithBaseURL(baseURL),
    56  		option.WithAPIKey("my-anthropic-api-key"),
    57  	)
    58  	_, err := client.Beta.Environments.Work.Update(
    59  		context.TODO(),
    60  		"work_id",
    61  		anthropic.BetaEnvironmentWorkUpdateParams{
    62  			EnvironmentID: "env_011CZkZ9X2dpNyB7HsEFoRfW",
    63  			BetaSelfHostedWorkUpdateRequest: anthropic.BetaSelfHostedWorkUpdateRequestParam{
    64  				Metadata: map[string]string{
    65  					"foo": "string",
    66  				},
    67  			},
    68  			Betas:       []anthropic.AnthropicBeta{anthropic.AnthropicBetaMessageBatches2024_09_24},
    69  			WorkspaceID: anthropic.String("wrkspc_011CZkZaBF1tNoB5wlCeusgy"),
    70  		},
    71  	)
    72  	if err != nil {
    73  		var apierr *anthropic.Error
    74  		if errors.As(err, &apierr) {
    75  			t.Log(string(apierr.DumpRequest(true)))
    76  		}
    77  		t.Fatalf("err should be nil: %s", err.Error())
    78  	}
    79  }
    80  
    81  func TestBetaEnvironmentWorkListWithOptionalParams(t *testing.T) {
    82  	t.Skip("buildURL drops path-level query params (SDK-4349)")
    83  	baseURL := "http://localhost:4010"
    84  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
    85  		baseURL = envURL
    86  	}
    87  	if !testutil.CheckTestServer(t, baseURL) {
    88  		return
    89  	}
    90  	client := anthropic.NewClient(
    91  		option.WithBaseURL(baseURL),
    92  		option.WithAPIKey("my-anthropic-api-key"),
    93  	)
    94  	_, err := client.Beta.Environments.Work.List(
    95  		context.TODO(),
    96  		"env_011CZkZ9X2dpNyB7HsEFoRfW",
    97  		anthropic.BetaEnvironmentWorkListParams{
    98  			Limit: anthropic.Int(1),
    99  			Page:  anthropic.String("page"),
   100  			Betas: []anthropic.AnthropicBeta{anthropic.AnthropicBetaMessageBatches2024_09_24},
   101  		},
   102  	)
   103  	if err != nil {
   104  		var apierr *anthropic.Error
   105  		if errors.As(err, &apierr) {
   106  			t.Log(string(apierr.DumpRequest(true)))
   107  		}
   108  		t.Fatalf("err should be nil: %s", err.Error())
   109  	}
   110  }
   111  
   112  func TestBetaEnvironmentWorkAckWithOptionalParams(t *testing.T) {
   113  	baseURL := "http://localhost:4010"
   114  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
   115  		baseURL = envURL
   116  	}
   117  	if !testutil.CheckTestServer(t, baseURL) {
   118  		return
   119  	}
   120  	client := anthropic.NewClient(
   121  		option.WithBaseURL(baseURL),
   122  		option.WithAPIKey("my-anthropic-api-key"),
   123  	)
   124  	_, err := client.Beta.Environments.Work.Ack(
   125  		context.TODO(),
   126  		"work_id",
   127  		anthropic.BetaEnvironmentWorkAckParams{
   128  			EnvironmentID: "env_011CZkZ9X2dpNyB7HsEFoRfW",
   129  			Betas:         []anthropic.AnthropicBeta{anthropic.AnthropicBetaMessageBatches2024_09_24},
   130  		},
   131  	)
   132  	if err != nil {
   133  		var apierr *anthropic.Error
   134  		if errors.As(err, &apierr) {
   135  			t.Log(string(apierr.DumpRequest(true)))
   136  		}
   137  		t.Fatalf("err should be nil: %s", err.Error())
   138  	}
   139  }
   140  
   141  func TestBetaEnvironmentWorkHeartbeatWithOptionalParams(t *testing.T) {
   142  	baseURL := "http://localhost:4010"
   143  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
   144  		baseURL = envURL
   145  	}
   146  	if !testutil.CheckTestServer(t, baseURL) {
   147  		return
   148  	}
   149  	client := anthropic.NewClient(
   150  		option.WithBaseURL(baseURL),
   151  		option.WithAPIKey("my-anthropic-api-key"),
   152  	)
   153  	_, err := client.Beta.Environments.Work.Heartbeat(
   154  		context.TODO(),
   155  		"work_id",
   156  		anthropic.BetaEnvironmentWorkHeartbeatParams{
   157  			EnvironmentID:         "env_011CZkZ9X2dpNyB7HsEFoRfW",
   158  			DesiredTTLSeconds:     anthropic.Int(0),
   159  			ExpectedLastHeartbeat: anthropic.String("expected_last_heartbeat"),
   160  			Betas:                 []anthropic.AnthropicBeta{anthropic.AnthropicBetaMessageBatches2024_09_24},
   161  		},
   162  	)
   163  	if err != nil {
   164  		var apierr *anthropic.Error
   165  		if errors.As(err, &apierr) {
   166  			t.Log(string(apierr.DumpRequest(true)))
   167  		}
   168  		t.Fatalf("err should be nil: %s", err.Error())
   169  	}
   170  }
   171  
   172  func TestBetaEnvironmentWorkPollWithOptionalParams(t *testing.T) {
   173  	baseURL := "http://localhost:4010"
   174  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
   175  		baseURL = envURL
   176  	}
   177  	if !testutil.CheckTestServer(t, baseURL) {
   178  		return
   179  	}
   180  	client := anthropic.NewClient(
   181  		option.WithBaseURL(baseURL),
   182  		option.WithAPIKey("my-anthropic-api-key"),
   183  	)
   184  	_, err := client.Beta.Environments.Work.Poll(
   185  		context.TODO(),
   186  		"env_011CZkZ9X2dpNyB7HsEFoRfW",
   187  		anthropic.BetaEnvironmentWorkPollParams{
   188  			BlockMs:            anthropic.Int(1),
   189  			ReclaimOlderThanMs: anthropic.Int(1),
   190  			Betas:              []anthropic.AnthropicBeta{anthropic.AnthropicBetaMessageBatches2024_09_24},
   191  			AnthropicWorkerID:  anthropic.String("Anthropic-Worker-ID"),
   192  		},
   193  	)
   194  	if err != nil {
   195  		var apierr *anthropic.Error
   196  		if errors.As(err, &apierr) {
   197  			t.Log(string(apierr.DumpRequest(true)))
   198  		}
   199  		t.Fatalf("err should be nil: %s", err.Error())
   200  	}
   201  }
   202  
   203  func TestBetaEnvironmentWorkStatsWithOptionalParams(t *testing.T) {
   204  	t.Skip("buildURL drops path-level query params (SDK-4349)")
   205  	baseURL := "http://localhost:4010"
   206  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
   207  		baseURL = envURL
   208  	}
   209  	if !testutil.CheckTestServer(t, baseURL) {
   210  		return
   211  	}
   212  	client := anthropic.NewClient(
   213  		option.WithBaseURL(baseURL),
   214  		option.WithAPIKey("my-anthropic-api-key"),
   215  	)
   216  	_, err := client.Beta.Environments.Work.Stats(
   217  		context.TODO(),
   218  		"env_011CZkZ9X2dpNyB7HsEFoRfW",
   219  		anthropic.BetaEnvironmentWorkStatsParams{
   220  			Betas:       []anthropic.AnthropicBeta{anthropic.AnthropicBetaMessageBatches2024_09_24},
   221  			WorkspaceID: anthropic.String("wrkspc_011CZkZaBF1tNoB5wlCeusgy"),
   222  		},
   223  	)
   224  	if err != nil {
   225  		var apierr *anthropic.Error
   226  		if errors.As(err, &apierr) {
   227  			t.Log(string(apierr.DumpRequest(true)))
   228  		}
   229  		t.Fatalf("err should be nil: %s", err.Error())
   230  	}
   231  }
   232  
   233  func TestBetaEnvironmentWorkStopWithOptionalParams(t *testing.T) {
   234  	baseURL := "http://localhost:4010"
   235  	if envURL, ok := os.LookupEnv("TEST_API_BASE_URL"); ok {
   236  		baseURL = envURL
   237  	}
   238  	if !testutil.CheckTestServer(t, baseURL) {
   239  		return
   240  	}
   241  	client := anthropic.NewClient(
   242  		option.WithBaseURL(baseURL),
   243  		option.WithAPIKey("my-anthropic-api-key"),
   244  	)
   245  	_, err := client.Beta.Environments.Work.Stop(
   246  		context.TODO(),
   247  		"work_id",
   248  		anthropic.BetaEnvironmentWorkStopParams{
   249  			EnvironmentID: "env_011CZkZ9X2dpNyB7HsEFoRfW",
   250  			BetaSelfHostedWorkStopRequest: anthropic.BetaSelfHostedWorkStopRequestParam{
   251  				Force: anthropic.Bool(true),
   252  			},
   253  			Betas:       []anthropic.AnthropicBeta{anthropic.AnthropicBetaMessageBatches2024_09_24},
   254  			WorkspaceID: anthropic.String("wrkspc_011CZkZaBF1tNoB5wlCeusgy"),
   255  		},
   256  	)
   257  	if err != nil {
   258  		var apierr *anthropic.Error
   259  		if errors.As(err, &apierr) {
   260  			t.Log(string(apierr.DumpRequest(true)))
   261  		}
   262  		t.Fatalf("err should be nil: %s", err.Error())
   263  	}
   264  }