Search in sources :

Example 16 with CommunicationUserIdentifier

use of com.azure.android.communication.common.CommunicationUserIdentifier in project azure-sdk-for-android by Azure.

the class ChatThreadAsyncClientTest method canAddListAndRemoveParticipantsWithResponse.

@ParameterizedTest
@MethodSource("com.azure.android.core.test.TestBase#getHttpClients")
public void canAddListAndRemoveParticipantsWithResponse(HttpClient httpClient) throws InterruptedException, ExecutionException {
    setupTest(httpClient);
    Iterable<ChatParticipant> participants = addParticipants(this.firstThreadParticipant.getId(), this.secondThreadParticipant.getId());
    Response<AddChatParticipantsResult> addResponse = this.chatThreadClient.addParticipantsWithResponse(participants, null).get();
    assertNotNull(addResponse);
    assertEquals(201, addResponse.getStatusCode());
    PagedAsyncStream<ChatParticipant> participantPagedAsyncStream = this.chatThreadClient.listParticipants(new ListParticipantsOptions(), null);
    CountDownLatch latch = new CountDownLatch(1);
    List<ChatParticipant> returnedParticipants = new ArrayList<ChatParticipant>();
    participantPagedAsyncStream.forEach(new AsyncStreamHandler<ChatParticipant>() {

        @Override
        public void onNext(ChatParticipant participant) {
            returnedParticipants.add(participant);
        }

        @Override
        public void onError(Throwable throwable) {
            latch.countDown();
        }

        @Override
        public void onComplete() {
            latch.countDown();
        }
    });
    awaitOnLatch(latch, "canAddListAndRemoveParticipantsWithResponse");
    assertTrue(returnedParticipants.size() > 0);
    for (ChatParticipant participant : returnedParticipants) {
        assertNotNull(participant);
        assertNotNull(participant.getDisplayName());
        assertNotNull(participant.getShareHistoryTime());
        assertNotNull(participant.getCommunicationIdentifier());
        assertTrue(participant.getCommunicationIdentifier() instanceof CommunicationUserIdentifier);
        assertNotNull(((CommunicationUserIdentifier) participant.getCommunicationIdentifier()).getId());
    }
    if (TEST_MODE != TestMode.PLAYBACK) {
        for (ChatParticipant participant : participants) {
            assertTrue(super.checkParticipantsListContainsParticipantId(returnedParticipants, ((CommunicationUserIdentifier) participant.getCommunicationIdentifier()).getId()));
        }
        for (ChatParticipant participant : participants) {
            final String id = ((CommunicationUserIdentifier) participant.getCommunicationIdentifier()).getId();
            assertNotNull(id);
            if (!id.equals(this.firstThreadParticipant.getId())) {
                this.chatThreadClient.removeParticipant(participant.getCommunicationIdentifier()).get();
            }
        }
    }
}
Also used : ArrayList(java.util.ArrayList) ChatParticipant(com.azure.android.communication.chat.models.ChatParticipant) CountDownLatch(java.util.concurrent.CountDownLatch) CommunicationUserIdentifier(com.azure.android.communication.common.CommunicationUserIdentifier) AddChatParticipantsResult(com.azure.android.communication.chat.models.AddChatParticipantsResult) ListParticipantsOptions(com.azure.android.communication.chat.models.ListParticipantsOptions) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) MethodSource(org.junit.jupiter.params.provider.MethodSource)

Example 17 with CommunicationUserIdentifier

use of com.azure.android.communication.common.CommunicationUserIdentifier in project azure-sdk-for-android by Azure.

the class ChatAsyncClientTest method setupTest.

private void setupTest(HttpClient httpClient) {
    this.client = super.getChatClientBuilder(httpClient).buildAsyncClient();
    this.firstThreadParticipant = new CommunicationUserIdentifier(THREAD_PARTICIPANT_1);
    this.secondThreadParticipant = new CommunicationUserIdentifier(THREAD_PARTICIPANT_2);
}
Also used : CommunicationUserIdentifier(com.azure.android.communication.common.CommunicationUserIdentifier)

Example 18 with CommunicationUserIdentifier

use of com.azure.android.communication.common.CommunicationUserIdentifier in project azure-sdk-for-android by Azure.

the class NotificationUtilsTest method canParseAcsDodUserRawId.

@Test
public void canParseAcsDodUserRawId() {
    final String acsUserRawId = "8:dod-acs:" + USER_ID;
    CommunicationIdentifier communicationIdentifier = NotificationUtils.getCommunicationIdentifier(acsUserRawId);
    assertNotNull(communicationIdentifier);
    assertTrue(communicationIdentifier instanceof CommunicationUserIdentifier);
    CommunicationUserIdentifier communicationUserIdentifier = (CommunicationUserIdentifier) communicationIdentifier;
    assertEquals(acsUserRawId, communicationUserIdentifier.getId());
}
Also used : CommunicationIdentifier(com.azure.android.communication.common.CommunicationIdentifier) CommunicationUserIdentifier(com.azure.android.communication.common.CommunicationUserIdentifier) Test(org.junit.jupiter.api.Test)

Example 19 with CommunicationUserIdentifier

use of com.azure.android.communication.common.CommunicationUserIdentifier in project azure-sdk-for-android by Azure.

the class NotificationUtilsTest method canParseAcsUserRawId.

@Test
public void canParseAcsUserRawId() {
    final String acsUserRawId = "8:acs:" + USER_ID;
    CommunicationIdentifier communicationIdentifier = NotificationUtils.getCommunicationIdentifier(acsUserRawId);
    assertNotNull(communicationIdentifier);
    assertTrue(communicationIdentifier instanceof CommunicationUserIdentifier);
    CommunicationUserIdentifier communicationUserIdentifier = (CommunicationUserIdentifier) communicationIdentifier;
    assertEquals(acsUserRawId, communicationUserIdentifier.getId());
}
Also used : CommunicationIdentifier(com.azure.android.communication.common.CommunicationIdentifier) CommunicationUserIdentifier(com.azure.android.communication.common.CommunicationUserIdentifier) Test(org.junit.jupiter.api.Test)

Aggregations

CommunicationUserIdentifier (com.azure.android.communication.common.CommunicationUserIdentifier)19 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)7 ChatParticipant (com.azure.android.communication.chat.models.ChatParticipant)6 MethodSource (org.junit.jupiter.params.provider.MethodSource)6 ArrayList (java.util.ArrayList)5 Test (org.junit.jupiter.api.Test)5 ListParticipantsOptions (com.azure.android.communication.chat.models.ListParticipantsOptions)4 CommunicationIdentifier (com.azure.android.communication.common.CommunicationIdentifier)4 CountDownLatch (java.util.concurrent.CountDownLatch)4 ExecutionException (java.util.concurrent.ExecutionException)4 ChatErrorResponseException (com.azure.android.communication.chat.models.ChatErrorResponseException)2 CreateChatThreadOptions (com.azure.android.communication.chat.models.CreateChatThreadOptions)2 CreateChatThreadResult (com.azure.android.communication.chat.models.CreateChatThreadResult)2 CommunicationCloudEnvironmentModel (com.azure.android.communication.chat.implementation.models.CommunicationCloudEnvironmentModel)1 CommunicationIdentifierModel (com.azure.android.communication.chat.implementation.models.CommunicationIdentifierModel)1 MicrosoftTeamsUserIdentifierModel (com.azure.android.communication.chat.implementation.models.MicrosoftTeamsUserIdentifierModel)1 PhoneNumberIdentifierModel (com.azure.android.communication.chat.implementation.models.PhoneNumberIdentifierModel)1 AddChatParticipantsResult (com.azure.android.communication.chat.models.AddChatParticipantsResult)1 ChatEvent (com.azure.android.communication.chat.models.ChatEvent)1 ChatMessageDeletedEvent (com.azure.android.communication.chat.models.ChatMessageDeletedEvent)1