@@ -116,6 +116,67 @@ suite "SQLite driver - query by content topic":
116116 # # Cleanup
117117 (await driver.close ()).expect (" driver to close" )
118118
119+ asyncTest " single content topic with meta field" :
120+ # # Given
121+ const contentTopic = " test-content-topic"
122+
123+ let driver = newSqliteArchiveDriver ()
124+
125+ let expected =
126+ @ [
127+ fakeWakuMessage (@ [byte 0 ], ts = ts (00 ), meta = " meta-0" ),
128+ fakeWakuMessage (@ [byte 1 ], ts = ts (10 ), meta = " meta-1" ),
129+ fakeWakuMessage (
130+ @ [byte 2 ], contentTopic = contentTopic, ts = ts (20 ), meta = " meta-2"
131+ ),
132+ fakeWakuMessage (
133+ @ [byte 3 ], contentTopic = contentTopic, ts = ts (30 ), meta = " meta-3"
134+ ),
135+ fakeWakuMessage (
136+ @ [byte 4 ], contentTopic = contentTopic, ts = ts (40 ), meta = " meta-4"
137+ ),
138+ fakeWakuMessage (
139+ @ [byte 5 ], contentTopic = contentTopic, ts = ts (50 ), meta = " meta-5"
140+ ),
141+ fakeWakuMessage (
142+ @ [byte 6 ], contentTopic = contentTopic, ts = ts (60 ), meta = " meta-6"
143+ ),
144+ fakeWakuMessage (
145+ @ [byte 7 ], contentTopic = contentTopic, ts = ts (70 ), meta = " meta-7"
146+ ),
147+ ]
148+ var messages = expected
149+
150+ shuffle (messages)
151+ debug " randomized message insertion sequence" , sequence = messages.mapIt (it.payload)
152+
153+ for msg in messages:
154+ require (
155+ await driver.put (
156+ DefaultPubsubTopic ,
157+ msg,
158+ computeDigest (msg),
159+ computeMessageHash (DefaultPubsubTopic , msg),
160+ msg.timestamp,
161+ )
162+ ).isOk ()
163+
164+ # # When
165+ let res = await driver.getMessages (
166+ contentTopic = @ [contentTopic], maxPageSize = 2 , ascendingOrder = true
167+ )
168+
169+ # # Then
170+ check:
171+ res.isOk ()
172+
173+ let filteredMessages = res.tryGet ().mapIt (it[1 ])
174+ check:
175+ filteredMessages == expected[2 .. 3 ]
176+
177+ # # Cleanup
178+ (await driver.close ()).expect (" driver to close" )
179+
119180 asyncTest " single content topic - descending order" :
120181 # # Given
121182 const contentTopic = " test-content-topic"
0 commit comments