From 851eb747c5d94538a01888ad36340ff8ec321628 Mon Sep 17 00:00:00 2001 From: Andrei Giurgiu Date: Wed, 2 Jun 2021 16:18:33 -0700 Subject: [PATCH] Adding a No Op version of the List RR with Options test, for code coverage --- .../chat/ChatThreadAsyncClientTest.java | 25 +++++++++++++++++++ ...est.canListReadReceiptsWithOptions[1].json | 17 +++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 sdk/communication/azure-communication-chat/src/test/resources/session-records/ChatThreadAsyncClientTest.canListReadReceiptsWithOptions[1].json diff --git a/sdk/communication/azure-communication-chat/src/test/java/com/azure/communication/chat/ChatThreadAsyncClientTest.java b/sdk/communication/azure-communication-chat/src/test/java/com/azure/communication/chat/ChatThreadAsyncClientTest.java index 9db4597d9ba8..37c9f7df11ed 100644 --- a/sdk/communication/azure-communication-chat/src/test/java/com/azure/communication/chat/ChatThreadAsyncClientTest.java +++ b/sdk/communication/azure-communication-chat/src/test/java/com/azure/communication/chat/ChatThreadAsyncClientTest.java @@ -878,6 +878,31 @@ public Mono send(HttpRequest request) { assertNotNull(readReceiptList.get(0).getSender()); } + @ParameterizedTest + @MethodSource("com.azure.core.test.TestBase#getHttpClients") + public void canListReadReceiptsWithOptions(HttpClient httpClient) { + HttpClient mockHttpClient = new NoOpHttpClient() { + @Override + public Mono send(HttpRequest request) { + return Mono.just(ChatResponseMocker.createReadReceiptsResponse(request)); + } + }; + setupUnitTest(mockHttpClient); + PagedFlux readReceipts = chatThreadClient.listReadReceipts( + new ListReadReceiptOptions().setMaxPageSize(1)); + + // // process the iterableByPage + List readReceiptList = new ArrayList(); + readReceipts.toIterable().forEach(receipt -> { + readReceiptList.add(receipt); + }); + + assertEquals(readReceiptList.size(), 2); + assertNotNull(readReceiptList.get(0).getChatMessageId()); + assertNotNull(readReceiptList.get(0).getReadOn()); + assertNotNull(readReceiptList.get(0).getSender()); + } + @ParameterizedTest @MethodSource("com.azure.core.test.TestBase#getHttpClients") public void canListReadReceiptsWithContext(HttpClient httpClient) { diff --git a/sdk/communication/azure-communication-chat/src/test/resources/session-records/ChatThreadAsyncClientTest.canListReadReceiptsWithOptions[1].json b/sdk/communication/azure-communication-chat/src/test/resources/session-records/ChatThreadAsyncClientTest.canListReadReceiptsWithOptions[1].json new file mode 100644 index 000000000000..8bd9ef5dcae2 --- /dev/null +++ b/sdk/communication/azure-communication-chat/src/test/resources/session-records/ChatThreadAsyncClientTest.canListReadReceiptsWithOptions[1].json @@ -0,0 +1,17 @@ +{ + "networkCallRecords" : [ { + "Method" : "GET", + "Uri" : "https://REDACTED.communication.azure.com/chat/threads/19:4b72178530934b7790135dd9359205e0@thread.v2/readReceipts?maxPageSize=1&api-version=2021-03-07", + "Headers" : { + "User-Agent" : "azsdk-java-azure-communication-chat/1.1.0-beta.1 (1.8.0_262; Windows 10; 10.0)" + }, + "Response" : { + "retry-after" : "0", + "Content-Length" : "433", + "StatusCode" : "200", + "Body" : "{\"value\":[{\"senderCommunicationIdentifier\":{\"communicationUser\":{ \"id\":\"8:acs:9b665d53-8164-4923-ad5d-5e983b07d2e7_00000005-334f-e4af-b274-5a3a0d0002f9\"} },\"chatMessageId\":\"1600201311647\",\"readOn\":\"2020-09-15T20:21:51Z\"},{\"senderCommunicationIdentifier\":{\"communicationUser\":{ \"id\":\"8:acs:9b665d53-8164-4923-ad5d-5e983b07d2e7_00000005-334f-e4af-b274-5a3a0d0002f9\"} },\"chatMessageId\":\"1600201311648\",\"readOn\":\"2020-09-15T20:21:53Z\"}]}" + }, + "Exception" : null + } ], + "variables" : [ ] +} \ No newline at end of file