Esempio n. 1
0
        public async Task StartAsync_Retries()
        {
            var mockExecutor = new Mock <ITriggeredFunctionExecutor>();
            var collInfo     = new DocumentCollectionInfo {
                Uri = new Uri("http://fakeaccount"), MasterKey = "c29tZV9rZXk=", DatabaseName = "FakeDb", CollectionName = "FakeColl"
            };
            var leaseInfo = new DocumentCollectionInfo {
                Uri = new Uri("http://fakeaccount"), MasterKey = "c29tZV9rZXk=", DatabaseName = "FakeDb", CollectionName = "leases"
            };
            var hostOptions = new ChangeFeedHostOptions();
            var feedOptions = new ChangeFeedOptions();

            var listener = new MockListener(mockExecutor.Object, collInfo, leaseInfo, hostOptions, feedOptions, NullLogger.Instance);

            // Ensure that we can call StartAsync() multiple times to retry if there is an error.
            for (int i = 0; i < 3; i++)
            {
                var ex = await Assert.ThrowsAnyAsync <InvalidOperationException>(() => listener.StartAsync(CancellationToken.None));

                Assert.Equal("Failed to register!", ex.Message);
            }

            // This should succeed
            await listener.StartAsync(CancellationToken.None);
        }
Esempio n. 2
0
        public async Task StartAsync_Retries()
        {
            var listener = new MockListener(_mockExecutor.Object, _functionId, _monitoredInfo, _leasesInfo, _processorOptions, _mockMonitoredService.Object, _mockLeasesService.Object, NullLogger.Instance);

            // Ensure that we can call StartAsync() multiple times to retry if there is an error.
            for (int i = 0; i < 3; i++)
            {
                var ex = await Assert.ThrowsAnyAsync <InvalidOperationException>(() => listener.StartAsync(CancellationToken.None));

                Assert.Equal("Failed to register!", ex.Message);
            }

            // This should succeed
            await listener.StartAsync(CancellationToken.None);
        }
Esempio n. 3
0
        public async Task StartAsync_Retries()
        {
            var mockExecutor = new Mock <ITriggeredFunctionExecutor>();

            var monitoredCosmosDBService = new Mock <ICosmosDBService>(MockBehavior.Strict);

            monitoredCosmosDBService
            .Setup(m => m.GetClient())
            .Returns(new DocumentClient(new Uri("http://fakeaccount"), "c29tZV9rZXk="));

            var leasesCosmosDBService = new Mock <ICosmosDBService>(MockBehavior.Strict);

            leasesCosmosDBService
            .Setup(m => m.GetClient())
            .Returns(new DocumentClient(new Uri("http://fakeaccount"), "c29tZV9rZXk="));

            var collInfo = new DocumentCollectionInfo {
                Uri = new Uri("http://fakeaccount"), MasterKey = "c29tZV9rZXk=", DatabaseName = "FakeDb", CollectionName = "FakeColl"
            };
            var leaseInfo = new DocumentCollectionInfo {
                Uri = new Uri("http://fakeaccount"), MasterKey = "c29tZV9rZXk=", DatabaseName = "FakeDb", CollectionName = "leases"
            };
            var processorOptions = new ChangeFeedProcessorOptions();

            var listener = new MockListener(mockExecutor.Object, collInfo, leaseInfo, processorOptions, monitoredCosmosDBService.Object, leasesCosmosDBService.Object, NullLogger.Instance);

            // Ensure that we can call StartAsync() multiple times to retry if there is an error.
            for (int i = 0; i < 3; i++)
            {
                var ex = await Assert.ThrowsAnyAsync <InvalidOperationException>(() => listener.StartAsync(CancellationToken.None));

                Assert.Equal("Failed to register!", ex.Message);
            }

            // This should succeed
            await listener.StartAsync(CancellationToken.None);
        }