@@ -28,7 +28,10 @@ import io.getstream.feeds.android.network.models.AddCommentResponse
2828import io.getstream.feeds.android.network.models.AddReactionRequest
2929import io.getstream.feeds.android.network.models.AddReactionResponse
3030import io.getstream.feeds.android.network.models.AppResponseFields
31+ import io.getstream.feeds.android.network.models.CastPollVoteRequest
3132import io.getstream.feeds.android.network.models.CreateDeviceRequest
33+ import io.getstream.feeds.android.network.models.CreatePollOptionRequest
34+ import io.getstream.feeds.android.network.models.CreatePollRequest
3235import io.getstream.feeds.android.network.models.DeleteActivitiesRequest
3336import io.getstream.feeds.android.network.models.DeleteActivitiesResponse
3437import io.getstream.feeds.android.network.models.FileUploadConfig
@@ -37,9 +40,17 @@ import io.getstream.feeds.android.network.models.GetOGResponse
3740import io.getstream.feeds.android.network.models.ListDevicesResponse
3841import io.getstream.feeds.android.network.models.OwnCapabilitiesBatchRequest
3942import io.getstream.feeds.android.network.models.OwnCapabilitiesBatchResponse
43+ import io.getstream.feeds.android.network.models.PollOptionResponse
44+ import io.getstream.feeds.android.network.models.PollResponse
45+ import io.getstream.feeds.android.network.models.PollVotesResponse
4046import io.getstream.feeds.android.network.models.QueryActivitiesRequest
4147import io.getstream.feeds.android.network.models.QueryActivitiesResponse
48+ import io.getstream.feeds.android.network.models.QueryPollVotesRequest
49+ import io.getstream.feeds.android.network.models.QueryPollsResponse
4250import io.getstream.feeds.android.network.models.Response
51+ import io.getstream.feeds.android.network.models.UpdatePollOptionRequest
52+ import io.getstream.feeds.android.network.models.UpdatePollPartialRequest
53+ import io.getstream.feeds.android.network.models.UpdatePollRequest
4354import io.mockk.coEvery
4455import io.mockk.coVerify
4556import io.mockk.mockk
@@ -90,6 +101,14 @@ internal class FeedsSingleFlightApiTest(private val testCase: SingleFlightTestCa
90101 private val testCreateDeviceResponse = Response (duration = " 100ms" )
91102 private val testAddBookmarkResponse =
92103 AddBookmarkResponse (duration = " 100ms" , bookmark = TestData .bookmarkResponse())
104+ private val testPollVoteResponse = PollVotesResponse (duration = " 100ms" )
105+ private val testPollResponse =
106+ PollResponse (duration = " 100ms" , poll = TestData .pollResponseData())
107+ private val testQueryPollsResponse = QueryPollsResponse (duration = " 100ms" )
108+ private val testResponse = Response (" 100ms" )
109+ private val testPollOptionResponse =
110+ PollOptionResponse (duration = " 100ms" , pollOption = TestData .pollOptionResponseData())
111+
93112 private val testAddCommentResponse =
94113 AddCommentResponse (duration = " 100ms" , comment = TestData .commentResponse())
95114 private val testAddReactionResponse =
@@ -185,6 +204,142 @@ internal class FeedsSingleFlightApiTest(private val testCase: SingleFlightTestCa
185204 apiResult = testAddBookmarkResponse,
186205 )
187206 ),
207+ arrayOf(
208+ SingleFlightTestCase (
209+ testName = " castPollVote" ,
210+ expectedKeyPrefix = " castPollVote-activity123-" ,
211+ call = { it.castPollVote(" activity123" , " poll123" , CastPollVoteRequest ()) },
212+ apiResult = testPollVoteResponse,
213+ )
214+ ),
215+ arrayOf(
216+ SingleFlightTestCase (
217+ testName = " deletePollVote" ,
218+ expectedKeyPrefix = " deletePollVote-activity123-" ,
219+ call = { it.deletePollVote(" activity123" , " poll123" , " vote123" ) },
220+ apiResult = testPollVoteResponse,
221+ )
222+ ),
223+ arrayOf(
224+ SingleFlightTestCase (
225+ testName = " createPoll" ,
226+ expectedKeyPrefix = " createPoll-" ,
227+ call = { it.createPoll(CreatePollRequest (name = " Test Poll" )) },
228+ apiResult = testPollResponse,
229+ )
230+ ),
231+ arrayOf(
232+ SingleFlightTestCase (
233+ testName = " updatePoll" ,
234+ expectedKeyPrefix = " updatePoll-" ,
235+ call = { it.updatePoll(UpdatePollRequest (" poll-1" , " UpdatedName" )) },
236+ apiResult = testPollResponse,
237+ )
238+ ),
239+ arrayOf(
240+ SingleFlightTestCase (
241+ testName = " queryPolls" ,
242+ expectedKeyPrefix = " queryPolls-" ,
243+ call = { it.queryPolls() },
244+ apiResult = testQueryPollsResponse,
245+ )
246+ ),
247+ arrayOf(
248+ SingleFlightTestCase (
249+ testName = " deletePoll" ,
250+ expectedKeyPrefix = " deletePoll-poll123" ,
251+ call = { it.deletePoll(" poll123" ) },
252+ apiResult = testResponse,
253+ )
254+ ),
255+ arrayOf(
256+ SingleFlightTestCase (
257+ testName = " getPoll" ,
258+ expectedKeyPrefix = " getPoll-poll123" ,
259+ call = { it.getPoll(" poll123" ) },
260+ apiResult = testPollResponse,
261+ )
262+ ),
263+ arrayOf(
264+ SingleFlightTestCase (
265+ testName = " updatePollPartial" ,
266+ expectedKeyPrefix = " updatePollPartial-poll123" ,
267+ call = {
268+ it.updatePollPartial(
269+ " poll123" ,
270+ UpdatePollPartialRequest (
271+ unset = listOf (" description" ),
272+ set = mapOf (" name" to " Partially Updated Poll" ),
273+ ),
274+ )
275+ },
276+ apiResult = testPollResponse,
277+ )
278+ ),
279+ arrayOf(
280+ SingleFlightTestCase (
281+ testName = " updatePollPartialWithNoBodyRequestNeeded" ,
282+ expectedKeyPrefix = " updatePollPartial-poll123" ,
283+ call = { it.updatePollPartial(" poll123" ) },
284+ apiResult = testPollResponse,
285+ )
286+ ),
287+ arrayOf(
288+ SingleFlightTestCase (
289+ testName = " createPollOption" ,
290+ expectedKeyPrefix = " createPollOption-poll123" ,
291+ call = {
292+ it.createPollOption(" poll123" , CreatePollOptionRequest (" Create Option" ))
293+ },
294+ apiResult = testPollOptionResponse,
295+ )
296+ ),
297+ arrayOf(
298+ SingleFlightTestCase (
299+ testName = " updatePollOption" ,
300+ expectedKeyPrefix = " updatePollOption-poll123" ,
301+ call = {
302+ it.updatePollOption(
303+ " poll123" ,
304+ UpdatePollOptionRequest (
305+ id = " option456" ,
306+ text = " Updated option text" ,
307+ custom = mapOf (" updatedBy" to " Ezra" ),
308+ ),
309+ )
310+ },
311+ apiResult = testPollOptionResponse,
312+ )
313+ ),
314+ arrayOf(
315+ SingleFlightTestCase (
316+ testName = " deletePollOption" ,
317+ expectedKeyPrefix = " deletePollOption-poll123-option456" ,
318+ call = { it.deletePollOption(pollId = " poll123" , optionId = " option456" ) },
319+ apiResult = testResponse,
320+ )
321+ ),
322+ arrayOf(
323+ SingleFlightTestCase (
324+ testName = " getPollOption" ,
325+ expectedKeyPrefix = " getPollOption-poll123-option456" ,
326+ call = { it.getPollOption(pollId = " poll123" , optionId = " option456" ) },
327+ apiResult = testPollOptionResponse,
328+ )
329+ ),
330+ arrayOf(
331+ SingleFlightTestCase (
332+ testName = " queryPollVotes" ,
333+ expectedKeyPrefix = " queryPollVotes-poll123" ,
334+ call = {
335+ it.queryPollVotes(
336+ pollId = " poll123" ,
337+ queryPollVotesRequest = QueryPollVotesRequest (),
338+ )
339+ },
340+ apiResult = testPollVoteResponse,
341+ )
342+ ),
188343 arrayOf(
189344 SingleFlightTestCase (
190345 testName = " addActivityReaction" ,
0 commit comments