Ejemplo n.º 1
0
        public async Task ReturnProviderApprentices()
        {
            //Arrange
            var request = new GetApprenticeshipFiltersRequest
            {
                ProviderId = 10
            };

            var expectedResponse = new GetApprenticeshipsFilterValuesQueryResult
            {
                EmployerNames = new[] { "Test 1", "Test 2" },
                CourseNames   = new[] { "Test 3", "Test 4" },
                StartDates    = new[] { DateTime.Now.AddDays(-1), DateTime.Now.AddDays(-2) },
                EndDates      = new[] { DateTime.Now.AddDays(-3), DateTime.Now.AddDays(-4) }
            };

            _mediator.Setup(m => m.Send(It.Is <GetApprenticeshipsFilterValuesQuery>(r => r.ProviderId.HasValue && r.ProviderId.Value.Equals(request.ProviderId)),
                                        It.IsAny <CancellationToken>())).ReturnsAsync(expectedResponse);

            //Act
            var result = await _controller.GetApprenticeshipsFilterValues(request) as OkObjectResult;

            //Assert
            Assert.IsNotNull(result);

            var filterValues = result.Value as GetApprenticeshipsFilterValuesQueryResult;

            filterValues.Should().BeEquivalentTo(expectedResponse);
        }
Ejemplo n.º 2
0
        public async Task Then_Checks_The_Caches_For_That_Employers_Filter_Values_And_Returns_If_Exists(
            GetApprenticeshipsFilterValuesQuery query,
            List <CommitmentsV2.Models.Apprenticeship> apprenticeships,
            GetApprenticeshipsFilterValuesQueryResult queryResult,
            [Frozen] Mock <ICacheStorageService> cacheStorageService,
            [Frozen] Mock <IProviderCommitmentsDbContext> mockContext,
            GetApprenticeshipsFilterValuesQueryHandler handler)
        {
            query.ProviderId = null;

            //Arrange
            mockContext
            .Setup(context => context.Apprenticeships)
            .ReturnsDbSet(apprenticeships);
            cacheStorageService
            .Setup(x => x.RetrieveFromCache <GetApprenticeshipsFilterValuesQueryResult>(
                       $"{nameof(GetApprenticeshipsFilterValuesQueryResult)}-{query.EmployerAccountId}"))
            .ReturnsAsync(queryResult);

            //Act
            var actual = await handler.Handle(query, CancellationToken.None);

            //Assert
            mockContext.Verify(x => x.Apprenticeships, Times.Never);
            actual.Should().BeEquivalentTo(queryResult);
        }