77 "compress/gzip"
88 "context"
99 "errors"
10+ "fmt"
1011 "io"
1112 "os"
1213 "path/filepath"
@@ -270,26 +271,31 @@ func TestCompressAndEncrypt(t *testing.T) {
270271 // write with compression and encryption
271272 writer , err := newRotateWriter (zap .NewNop (), storage , WriterCfg {
272273 Dir : tmpDir ,
273- FileSize : 1000 ,
274+ FileSize : 1 ,
274275 Compress : true ,
275276 EncryptMethod : EncryptAes ,
276277 KeyFile : keyFile ,
277278 })
278279 require .NoError (t , err )
279- _ , err = writer .Write ([]byte ("test" ))
280- require .NoError (t , err )
280+ // write into 2 files
281+ for i := 0 ; i < 2 ; i ++ {
282+ _ , err = writer .Write ([]byte ("test" ))
283+ require .NoError (t , err )
284+ }
281285 require .NoError (t , writer .Close ())
282286
283287 // make sure data is compressed after encryption
284- file , err := os .Open (filepath .Join (tmpDir , "traffic-1.log.gz" ))
285- require .NoError (t , err )
286- greader , err := gzip .NewReader (file )
287- require .NoError (t , err )
288- data := make ([]byte , 1000 )
289- n , err := io .ReadFull (greader , data )
290- require .ErrorContains (t , err , "EOF" )
291- require .Equal (t , 20 , n )
292- require .NoError (t , file .Close ())
288+ for i := 0 ; i < 2 ; i ++ {
289+ file , err := os .Open (filepath .Join (tmpDir , fmt .Sprintf ("traffic-%d.log.gz" , i + 1 )))
290+ require .NoError (t , err )
291+ greader , err := gzip .NewReader (file )
292+ require .NoError (t , err )
293+ data := make ([]byte , 1000 )
294+ n , err := io .ReadFull (greader , data )
295+ require .ErrorContains (t , err , "EOF" )
296+ require .Equal (t , 20 , n )
297+ require .NoError (t , file .Close ())
298+ }
293299
294300 // rotateReader is able to read the file
295301 reader , err := newRotateReader (zap .NewNop (), storage , ReaderCfg {
@@ -298,9 +304,10 @@ func TestCompressAndEncrypt(t *testing.T) {
298304 KeyFile : keyFile ,
299305 })
300306 require .NoError (t , err )
301- n , err = io .ReadFull (reader , data )
307+ data := make ([]byte , 1000 )
308+ n , err := io .ReadFull (reader , data )
302309 require .ErrorContains (t , err , "EOF" )
303- require .Equal (t , 4 , n )
304- require .Equal (t , []byte ("test " ), data [:4 ])
310+ require .Equal (t , 8 , n )
311+ require .Equal (t , []byte ("testtest " ), data [:8 ])
305312 require .NoError (t , reader .Close ())
306313}
0 commit comments