X-Git-Url: https://git.giacomolli.uk/onechat/blobdiff_plain/6b21fcf78372995c6d8130c63f2f8aa2609bf7fe..c3c7bc90eb73e83f48fbeac6be149ade95a726c0:/chatgpt_test.go diff --git a/chatgpt_test.go b/chatgpt_test.go index a644daf..cb144fb 100644 --- a/chatgpt_test.go +++ b/chatgpt_test.go @@ -20,6 +20,7 @@ func TestLoginWritesTheTokenFile(t *testing.T) { auth := newTestChatGPTAuth(t, server) var out strings.Builder + err := auth.Login(t.Context(), &out) require.NoError(t, err) @@ -120,6 +121,7 @@ func TestAuthorizeRunsOneRefreshAtATime(t *testing.T) { chatgptWriteTestTokens(t, auth, server.token(time.Second), "refresh-0") var group sync.WaitGroup + errs := make(chan error, 8) for range 8 { group.Go(func() { @@ -129,6 +131,7 @@ func TestAuthorizeRunsOneRefreshAtATime(t *testing.T) { group.Wait() close(errs) + for err := range errs { require.NoError(t, err) } @@ -145,6 +148,7 @@ func TestAuthorizeNeedsALogin(t *testing.T) { server.failRefresh = true chatgptWriteTestTokens(t, auth, server.token(-time.Minute), "refresh-0") + before, err := os.ReadFile(auth.path) require.NoError(t, err) @@ -168,6 +172,7 @@ func TestForcedRefreshLetsTheNextCallWork(t *testing.T) { require.NoError(t, err) require.Equal(t, 1, server.refreshes) + call := responses.Call(0) require.Equal(t, "Bearer "+server.access[1], call.header.Get("Authorization")) require.Equal(t, chatgptTestAccount, call.header.Get("ChatGPT-Account-Id")) @@ -179,6 +184,7 @@ func TestModelEndpointFollowsTheConfig(t *testing.T) { config := defaultConfig() t.Setenv("OPENAI_API_KEY", modelTestKey) + address, auth, err := modelEndpoint(config, dir) require.NoError(t, err) require.Equal(t, modelChatGPTURL, address) @@ -192,6 +198,7 @@ func TestModelEndpointFollowsTheConfig(t *testing.T) { require.Equal(t, ModelAPIKey(modelTestKey), auth) t.Setenv("OPENAI_API_KEY", "") + _, _, err = modelEndpoint(config, dir) require.ErrorContains(t, err, "OPENAI_API_KEY") } @@ -203,6 +210,7 @@ func chatgptReadTokenFile(t *testing.T, path string) ChatGPTTokenFile { require.NoError(t, err) var tokens ChatGPTTokenFile + require.NoError(t, json.Unmarshal(data, &tokens)) return tokens