@@ -27,10 +27,68 @@ public function testRotationProcessorWithGzProcessor(): void
27
27
$ this ->assertEquals (self ::DIR_WORK .'file.log.1.gz ' , $ fileRotated );
28
28
})->rotate (self ::DIR_WORK .'file.log ' );
29
29
30
- // $this->assertStringEqualsFile(self::DIR_WORK.'file.log', '');
31
-
32
30
$ this ->assertFileExists (self ::DIR_WORK .'file.log.1.gz ' );
33
31
34
32
$ this ->assertEquals ($ content , implode ('' , (array )gzfile (self ::DIR_WORK .'file.log.1.gz ' )));
35
33
}
34
+
35
+ public function testRotationProcessorWithGzProcessorWithLevel (): void
36
+ {
37
+ $ rotation = new Rotation ();
38
+
39
+ $ rotation ->compress ();
40
+
41
+ $ content = bin2hex ('Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
42
+ Aenean commodo ligula eget dolor. Aenean massa. Cum sociis
43
+ ffffffffffffffff
44
+ natoque penatibus et magnis dis parturient montes, nascetur
45
+ hhhhhhhhhhhhhhhh
46
+ ridiculus mus. Donec quam felis, ultricies nec, pellentesque
47
+ ffffffhhhhhggggx x
48
+ eu, pretium quis, sem. Nulla consequat massa quis enim.
49
+ Donec pede justo, fringilla vel, aliquet nec, vulputate
50
+ eget, arcu. ' );
51
+
52
+ $ content .= $ content ;
53
+
54
+
55
+ file_put_contents (self ::DIR_WORK .'file.log ' , $ content );
56
+ $ rotation ->rotate (self ::DIR_WORK .'file.log ' );
57
+ $ sizeDefaultLevel = filesize (self ::DIR_WORK .'file.log.1.gz ' );
58
+
59
+ file_put_contents (self ::DIR_WORK .'file.log ' , $ content );
60
+ $ rotation ->compress (1 )->rotate (self ::DIR_WORK .'file.log ' );
61
+ $ sizeMinLevel = filesize (self ::DIR_WORK .'file.log.1.gz ' );
62
+
63
+ file_put_contents (self ::DIR_WORK .'file.log ' , $ content );
64
+ $ rotation ->compress (9 )->rotate (self ::DIR_WORK .'file.log ' );
65
+ $ sizeMaxLevel = filesize (self ::DIR_WORK .'file.log.1.gz ' );
66
+
67
+ $ this ->assertLessThan ($ sizeMinLevel , $ sizeDefaultLevel );
68
+ $ this ->assertGreaterThan ($ sizeMaxLevel , $ sizeDefaultLevel );
69
+ }
70
+
71
+ public function testRotationProcessorWithoutGzProcessorIfLevelIsZero (): void
72
+ {
73
+ $ rotation = new Rotation ();
74
+
75
+ $ rotation ->compress (0 );
76
+
77
+ $ content = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
78
+ Aenean commodo ligula eget dolor. Aenean massa. Cum sociis
79
+ natoque penatibus et magnis dis parturient montes, nascetur
80
+ ridiculus mus. Donec quam felis, ultricies nec, pellentesque
81
+ eu, pretium quis, sem. Nulla consequat massa quis enim.
82
+ Donec pede justo, fringilla vel, aliquet nec, vulputate
83
+ eget, arcu. ' ;
84
+
85
+ file_put_contents (self ::DIR_WORK .'file.log ' , $ content );
86
+
87
+ $ rotation ->rotate (self ::DIR_WORK .'file.log ' );
88
+
89
+ $ this ->assertFileExists (self ::DIR_WORK .'file.log.1 ' );
90
+ $ this ->assertFileDoesNotExist (self ::DIR_WORK .'file.log.1.gz ' );
91
+
92
+ $ this ->assertEquals ($ content , file_get_contents (self ::DIR_WORK .'file.log.1 ' ));
93
+ }
36
94
}
0 commit comments