5
5
use Enqueue \Fs \FsConnectionFactory ;
6
6
use Enqueue \Fs \FsContext ;
7
7
use Enqueue \Fs \FsMessage ;
8
- use Makasim \File \TempFile ;
9
8
use PHPUnit \Framework \TestCase ;
10
9
11
10
class FsConsumerTest extends TestCase
@@ -19,8 +18,7 @@ public function setUp()
19
18
{
20
19
$ this ->fsContext = (new FsConnectionFactory (['path ' => sys_get_temp_dir ()]))->createContext ();
21
20
22
- new TempFile (sys_get_temp_dir ().'/fs_test_queue ' );
23
- file_put_contents (sys_get_temp_dir ().'/fs_test_queue ' , '' );
21
+ $ this ->fsContext ->purge ($ this ->fsContext ->createQueue ('fs_test_queue ' ));
24
22
}
25
23
26
24
public function tearDown ()
@@ -68,4 +66,29 @@ public function testShouldConsumeMessagesFromFileOneByOne()
68
66
69
67
$ this ->assertEmpty (file_get_contents (sys_get_temp_dir ().'/fs_test_queue ' ));
70
68
}
69
+
70
+ /**
71
+ * @group bug
72
+ */
73
+ public function testShouldNotFailOnSpecificMessageSize ()
74
+ {
75
+ $ context = $ this ->fsContext ;
76
+ $ queue = $ context ->createQueue ('fs_test_queue ' );
77
+ $ context ->purge ($ queue );
78
+
79
+ $ consumer = $ context ->createConsumer ($ queue );
80
+ $ producer = $ context ->createProducer ();
81
+
82
+ $ producer ->send ($ queue , $ context ->createMessage (str_repeat ('a ' , 23 )));
83
+ $ producer ->send ($ queue , $ context ->createMessage (str_repeat ('b ' , 24 )));
84
+
85
+ $ message = $ consumer ->receiveNoWait ();
86
+ $ this ->assertSame (str_repeat ('b ' , 24 ), $ message ->getBody ());
87
+
88
+ $ message = $ consumer ->receiveNoWait ();
89
+ $ this ->assertSame (str_repeat ('a ' , 23 ), $ message ->getBody ());
90
+
91
+ $ message = $ consumer ->receiveNoWait ();
92
+ $ this ->assertNull ($ message );
93
+ }
71
94
}
0 commit comments