public async Task GroupExistsSocketExceptionTest() { var mockLogs = new MockLoggingRepository(); var telemetryClient = new TelemetryClient(TelemetryConfiguration.CreateDefault()); var mockGraphGroup = new Mock <IGraphGroupRepository>(); var mockMail = new MockMailRepository(); var mailSenders = new EmailSenderRecipient("*****@*****.**", "fake_pass", "*****@*****.**", "*****@*****.**", "*****@*****.**"); var mockSynJobs = new MockSyncJobRepository(); var dryRun = new DryRunValue(false); var attemptNumber = 1; mockGraphGroup.Setup(x => x.GroupExists(It.IsAny <Guid>())).Callback(() => { if (attemptNumber == 1) { attemptNumber++; throw new SocketException(); } }).ReturnsAsync(true); var graphUpdaterService = new GraphUpdaterService(mockLogs, telemetryClient, mockGraphGroup.Object, mockMail, mailSenders, mockSynJobs, dryRun); var groupId = Guid.NewGuid(); var runId = Guid.NewGuid(); var response = await graphUpdaterService.GroupExistsAsync(groupId, runId); Assert.IsTrue(response.Result); Assert.IsTrue(mockLogs.MessagesLogged.Any(x => x.Message.Contains("Got a transient SocketException"))); }
public async Task GroupExistsTest() { var mockLogs = new MockLoggingRepository(); var telemetryClient = new TelemetryClient(TelemetryConfiguration.CreateDefault()); var mockGraphGroup = new MockGraphGroupRepository(); var mockMail = new MockMailRepository(); var mailSenders = new EmailSenderRecipient("*****@*****.**", "fake_pass", "*****@*****.**", "*****@*****.**", "*****@*****.**"); var mockSynJobs = new MockSyncJobRepository(); var dryRun = new DryRunValue(false); var graphUpdaterService = new GraphUpdaterService(mockLogs, telemetryClient, mockGraphGroup, mockMail, mailSenders, mockSynJobs, dryRun); var groupId = Guid.NewGuid(); var runId = Guid.NewGuid(); mockGraphGroup.GroupsToUsers.Add(groupId, new List <AzureADUser>()); var response = await graphUpdaterService.GroupExistsAsync(groupId, runId); Assert.IsTrue(response.Result); }