@@ -24,19 +24,53 @@ func TestEnqueue(t *testing.T) {
2424 assert .NoError (t , queueService .Enqueue ([]byte ("Hello World 2" )))
2525 assert .NoError (t , queueService .Enqueue ([]byte ("Hello World 3" )))
2626
27- _ , err = queueService .Dequeue (1 )
27+ data , _ := queueService .Dequeue (1 )
28+ assert .Equal (t , []byte ("Hello World" ), data )
29+
30+ data , _ = queueService .Dequeue (1 )
31+ assert .Equal (t , []byte ("Hello World 1" ), data )
32+
33+ data , _ = queueService .Dequeue (1 )
34+ assert .Equal (t , []byte ("Hello World 2" ), data )
35+
36+ data , _ = queueService .Dequeue (2 )
37+ assert .Equal (t , []byte ("Hello World" ), data )
38+
39+ data , _ = queueService .Dequeue (1 )
40+ assert .Equal (t , []byte ("Hello World 3" ), data )
41+ }
42+
43+ func TestDequeueFromARestoredQueue (t * testing.T ) {
44+ segmentPath := createTempDir ("testEnqueue/segments" )
45+ metaDataPath := createTempDir ("testEnqueue/metadata" )
46+ defer os .RemoveAll (segmentPath )
47+ defer os .RemoveAll (metaDataPath )
48+ cfg := config .NewConfig (segmentPath , metaDataPath , 1024 , time .Second )
49+
50+ queueService , err := NewQueueService (cfg )
2851 assert .NoError (t , err )
29- //assert.Equal(t, []byte("Hello World"), data)
30- //
31- //data, _ = queueService.Dequeue(1)
32- //assert.Equal(t, []byte("Hello World 1"), data)
33- //
34- //data, _ = queueService.Dequeue(1)
35- //assert.Equal(t, []byte("Hello World 2"), data)
36- //
37- //data, _ = queueService.Dequeue(2)
38- //assert.Equal(t, []byte("Hello World"), data)
39- //
40- //data, _ = queueService.Dequeue(1)
41- //assert.Equal(t, []byte("Hello World 3"), data)
52+
53+ assert .NoError (t , queueService .Enqueue ([]byte ("Hello World" )))
54+ assert .NoError (t , queueService .Enqueue ([]byte ("Hello World 1" )))
55+ assert .NoError (t , queueService .Enqueue ([]byte ("Hello World 2" )))
56+ assert .NoError (t , queueService .Enqueue ([]byte ("Hello World 3" )))
57+
58+ data , _ := queueService .Dequeue (1 )
59+ assert .Equal (t , []byte ("Hello World" ), data )
60+
61+ data , _ = queueService .Dequeue (1 )
62+ assert .Equal (t , []byte ("Hello World 1" ), data )
63+
64+ assert .NoError (t , queueService .Close ())
65+ queueService , err = NewQueueService (cfg )
66+ assert .NoError (t , err )
67+
68+ data , _ = queueService .Dequeue (1 )
69+ assert .Equal (t , []byte ("Hello World 2" ), data )
70+
71+ data , _ = queueService .Dequeue (2 )
72+ assert .Equal (t , []byte ("Hello World" ), data )
73+
74+ data , _ = queueService .Dequeue (1 )
75+ assert .Equal (t , []byte ("Hello World 3" ), data )
4276}
0 commit comments