@@ -8,20 +8,17 @@ import (
8
8
"testing"
9
9
10
10
"github.com/sashabaranov/go-openai"
11
+ "github.com/sashabaranov/go-openai/internal/test"
11
12
"github.com/sashabaranov/go-openai/internal/test/checks"
12
13
)
13
14
14
15
var emptyStr = ""
15
16
16
- // TestMessages Tests the messages endpoint of the API using the mocked server.
17
- func TestMessages (t * testing.T ) {
17
+ func setupServerForTestMessage (t * testing.T , server * test.ServerTest ) {
18
18
threadID := "thread_abc123"
19
19
messageID := "msg_abc123"
20
20
fileID := "file_abc123"
21
21
22
- client , server , teardown := setupOpenAITestServer ()
23
- defer teardown ()
24
-
25
22
server .RegisterHandler (
26
23
"/v1/threads/" + threadID + "/messages/" + messageID + "/files/" + fileID ,
27
24
func (w http.ResponseWriter , r * http.Request ) {
@@ -115,6 +112,13 @@ func TestMessages(t *testing.T) {
115
112
Metadata : nil ,
116
113
})
117
114
fmt .Fprintln (w , string (resBytes ))
115
+ case http .MethodDelete :
116
+ resBytes , _ := json .Marshal (openai.MessageDeletionStatus {
117
+ ID : messageID ,
118
+ Object : "thread.message.deleted" ,
119
+ Deleted : true ,
120
+ })
121
+ fmt .Fprintln (w , string (resBytes ))
118
122
default :
119
123
t .Fatalf ("unsupported messages http method: %s" , r .Method )
120
124
}
@@ -176,7 +180,18 @@ func TestMessages(t *testing.T) {
176
180
}
177
181
},
178
182
)
183
+ }
179
184
185
+ // TestMessages Tests the messages endpoint of the API using the mocked server.
186
+ func TestMessages (t * testing.T ) {
187
+ threadID := "thread_abc123"
188
+ messageID := "msg_abc123"
189
+ fileID := "file_abc123"
190
+
191
+ client , server , teardown := setupOpenAITestServer ()
192
+ defer teardown ()
193
+
194
+ setupServerForTestMessage (t , server )
180
195
ctx := context .Background ()
181
196
182
197
// static assertion of return type
@@ -225,6 +240,17 @@ func TestMessages(t *testing.T) {
225
240
t .Fatalf ("expected message metadata to get modified" )
226
241
}
227
242
243
+ msgDel , err := client .DeleteMessage (ctx , threadID , messageID )
244
+ checks .NoError (t , err , "DeleteMessage error" )
245
+ if msgDel .ID != messageID {
246
+ t .Fatalf ("unexpected message id: '%s'" , msg .ID )
247
+ }
248
+ if ! msgDel .Deleted {
249
+ t .Fatalf ("expected deleted is true" )
250
+ }
251
+ _ , err = client .DeleteMessage (ctx , threadID , "not_exist_id" )
252
+ checks .HasError (t , err , "DeleteMessage error" )
253
+
228
254
// message files
229
255
var msgFile openai.MessageFile
230
256
msgFile , err = client .RetrieveMessageFile (ctx , threadID , messageID , fileID )
0 commit comments