@@ -15,6 +15,7 @@ import (
15
15
"go.mongodb.org/mongo-driver/v2/event"
16
16
"go.mongodb.org/mongo-driver/v2/internal/assert"
17
17
"go.mongodb.org/mongo-driver/v2/internal/integration/mtest"
18
+ "go.mongodb.org/mongo-driver/v2/internal/require"
18
19
"go.mongodb.org/mongo-driver/v2/mongo"
19
20
"go.mongodb.org/mongo-driver/v2/mongo/options"
20
21
"go.mongodb.org/mongo-driver/v2/mongo/writeconcern"
@@ -231,18 +232,27 @@ func TestCollection(t *testing.T) {
231
232
mt .Run (tc .name , func (mt * mtest.T ) {
232
233
res , err := mt .Coll .InsertMany (context .Background (), docs , options .InsertMany ().SetOrdered (tc .ordered ))
233
234
234
- assert .Equal (mt , tc .numInserted , len (res .InsertedIDs ), "expected %v inserted IDs, got %v" , tc .numInserted , len (res .InsertedIDs ))
235
- assert .Equal (mt , id , res .InsertedIDs [0 ], "expected inserted ID %v, got %v" , id , res .InsertedIDs [0 ])
236
- if tc .numInserted > 1 {
237
- assert .NotNil (mt , res .InsertedIDs [1 ], "expected ID but got nil" )
238
- }
239
-
240
235
we , ok := err .(mongo.BulkWriteException )
241
236
assert .True (mt , ok , "expected error type %T, got %T" , mongo.BulkWriteException {}, err )
242
237
numErrors := len (we .WriteErrors )
243
238
assert .Equal (mt , tc .numErrors , numErrors , "expected %v write errors, got %v" , tc .numErrors , numErrors )
244
239
gotCode := we .WriteErrors [0 ].Code
245
240
assert .Equal (mt , errorDuplicateKey , gotCode , "expected error code %v, got %v" , errorDuplicateKey , gotCode )
241
+
242
+ require .Greater (mt , len (res .InsertedIDs ), 0 , "expected at least one inserted ID" )
243
+ assert .Equal (mt ,
244
+ tc .numInserted ,
245
+ len (res .InsertedIDs ),
246
+ "expected %v inserted IDs, got %v" ,
247
+ tc .numInserted ,
248
+ len (res .InsertedIDs ))
249
+ assert .Equal (mt ,
250
+ id ,
251
+ res .InsertedIDs [0 ],
252
+ "expected ID to match" )
253
+ if tc .numInserted > 1 {
254
+ assert .NotNil (mt , res .InsertedIDs [1 ], "expected ID but got nil" )
255
+ }
246
256
})
247
257
}
248
258
})
0 commit comments