@@ -351,7 +351,8 @@ func TestDiskQueueSyncAfterReadWithDiskSizeImplementation(t *testing.T) {
351
351
dq := NewWithDiskSpace (dqName , tmpDir , 1 << 11 , 1 << 11 , 0 , 1 << 10 , 2500 , 50 * time .Millisecond , l )
352
352
defer dq .Close ()
353
353
354
- msg := make ([]byte , 1000 )
354
+ msgSize := 1000
355
+ msg := make ([]byte , msgSize )
355
356
dq .Put (msg )
356
357
357
358
for i := 0 ; i < 10 ; i ++ {
@@ -391,12 +392,17 @@ next:
391
392
panic ("fail" )
392
393
393
394
completeWriteFile:
394
- dq .Put (msg )
395
+ // meet the file size limit exactly (2048 bytes)
396
+ totalBytes := 2 * (msgSize + 4 )
397
+ bytesRemaining := 2048 - (totalBytes + 8 )
398
+ oneByteMsgSizeIncrease := 5
399
+ dq .Put (make ([]byte , bytesRemaining - 4 - oneByteMsgSizeIncrease ))
400
+ dq .Put (make ([]byte , 1 ))
395
401
396
402
for i := 0 ; i < 10 ; i ++ {
397
403
// test that write position and messages reset when a new file is created
398
404
d := readMetaDataFile (dq .(* diskQueue ).metaDataFileName (), 0 , true )
399
- if d .depth == 2 &&
405
+ if d .depth == 3 &&
400
406
d .readFileNum == 0 &&
401
407
d .writeFileNum == 1 &&
402
408
d .readPos == 1004 &&
@@ -413,12 +419,14 @@ completeWriteFile:
413
419
completeReadFile:
414
420
dq .Put (msg )
415
421
422
+ <- dq .ReadChan ()
416
423
<- dq .ReadChan ()
417
424
<- dq .ReadChan ()
418
425
419
426
for i := 0 ; i < 10 ; i ++ {
420
427
// test that read position and messages reset when a file is completely read
421
428
d := readMetaDataFile (dq .(* diskQueue ).metaDataFileName (), 0 , true )
429
+ t .Log (d .depth , d .readFileNum , d .writeFileNum , d .readPos , d .writePos , d .readMessages , d .writeMessages )
422
430
if d .depth == 1 &&
423
431
d .readFileNum == 1 &&
424
432
d .writeFileNum == 1 &&
0 commit comments