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 }