public async Task Then_Returns_Ok_And_Response( int opportunityId, GetDetailQueryResult getDetailQueryResult, [Frozen] Mock <IMediator> mockMediator, [Greedy] OpportunityController opportunityController) { mockMediator .Setup(x => x.Send( It.Is <GetDetailQuery>(y => y.OpportunityId == opportunityId), It.IsAny <CancellationToken>())) .ReturnsAsync(getDetailQueryResult); var controllerResult = await opportunityController.Detail(opportunityId); var okObjectResult = controllerResult as OkObjectResult; var response = okObjectResult.Value as GetDetailResponse; Assert.IsNotNull(controllerResult); Assert.IsNotNull(okObjectResult); Assert.IsNotNull(response); Assert.AreEqual(okObjectResult.StatusCode, (int)HttpStatusCode.OK); Assert.AreEqual(getDetailQueryResult.Opportunity.Id, response.Opportunity.Id); Assert.AreEqual(getDetailQueryResult.Sectors, response.Sectors); Assert.AreEqual(getDetailQueryResult.JobRoles, response.JobRoles); Assert.AreEqual(getDetailQueryResult.Levels, response.Levels); }
public When_Placement_Information_Loaded() { var dto = new PlacementInformationSaveDto { OpportunityId = OpportunityId, OpportunityItemId = OpportunityItemId, JobRole = JobRole, OpportunityType = OpportunityType.Referral, CompanyName = CompanyName, CompanyNameAka = CompanyNameAka, PlacementsKnown = PlacementsKnown, Placements = Placements, NoSuitableStudent = true, HadBadExperience = true, ProvidersTooFarAway = true }; var config = new MapperConfiguration(c => c.AddMaps(typeof(PlacementInformationSaveDtoMapper).Assembly)); var mapper = new Mapper(config); _opportunityService = Substitute.For <IOpportunityService>(); _opportunityService.GetPlacementInformationAsync(OpportunityItemId).Returns(dto); var opportunityController = new OpportunityController(_opportunityService, mapper); _result = opportunityController.GetPlacementInformationAsync(OpportunityItemId).GetAwaiter().GetResult(); }
public void SetUp() { _opportunityId = _fixture.Create <int>(); _accountId = _fixture.Create <long>(); _request = _fixture.Create <ApplyRequest>(); _result = _fixture.Create <CreateApplicationCommandResult>(); _mediator = new Mock <IMediator>(); _controller = new OpportunityController(Mock.Of <ILogger <OpportunityController> >(), _mediator.Object); _mediator.Setup(x => x.Send(It.Is <CreateApplicationCommand>(command => command.PledgeId == _opportunityId && command.EmployerAccountId == _accountId && command.EncodedAccountId == _request.EncodedAccountId && command.Details == _request.Details && command.StandardId == _request.StandardId && command.NumberOfApprentices == _request.NumberOfApprentices && command.StartDate == _request.StartDate && command.HasTrainingProvider == _request.HasTrainingProvider && command.Sectors.Equals(_request.Sectors) && command.Locations.Equals(_request.Locations) && command.AdditionalLocation == _request.AdditionalLocation && command.SpecificLocation == _request.SpecificLocation && command.FirstName == _request.FirstName && command.LastName == _request.LastName && command.EmailAddresses.Equals(_request.EmailAddresses) && command.BusinessWebsite == _request.BusinessWebsite && command.UserId == _request.UserId && command.UserDisplayName == _request.UserDisplayName ), It.IsAny <CancellationToken>())) .ReturnsAsync(_result); }
public When_Opportunity_Basket_Is_Loaded_With_Referrals() { var config = new MapperConfiguration(c => c.AddMaps(typeof(OpportunityMapper).Assembly)); var mapper = new Mapper(config); _opportunityService = Substitute.For <IOpportunityService>(); _opportunityService.GetOpportunityBasketAsync(1).Returns(new OpportunityBasketViewModel { OpportunityId = 1, CompanyName = "Company Name", CompanyNameAka = "Also Known As", ProvisionGapItems = null, ReferralItems = new List <BasketReferralItemViewModel> { new BasketReferralItemViewModel { OpportunityType = "Referral", OpportunityItemId = 5 } } }); var opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(opportunityController) .AddUserName("CreatedBy") .Build(); _result = controllerWithClaims.GetOpportunityBasketAsync(1, 0).GetAwaiter().GetResult(); }
public async Task Returns_Ok_And_Response( GetIndexQueryResult getIndexQueryResult, [Frozen] Mock <IMediator> mockMediator, [Greedy] OpportunityController opportunityController ) { var sectorsList = _fixture.Create <IEnumerable <string> >(); mockMediator .Setup(x => x.Send( It.IsAny <GetIndexQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(getIndexQueryResult); var controllerResult = await opportunityController.GetIndex(sectorsList); var okObjectResult = controllerResult as OkObjectResult; var responseObject = okObjectResult.Value as GetIndexResponse; Assert.IsNotNull(controllerResult); Assert.IsNotNull(okObjectResult); Assert.IsNotNull(responseObject); Assert.IsNotNull(responseObject.Opportunities); Assert.IsNotNull(responseObject.Sectors); Assert.IsNotNull(responseObject.JobRoles); Assert.IsNotNull(responseObject.Levels); Assert.AreEqual(okObjectResult.StatusCode, (int)HttpStatusCode.OK); }
public void GetOpportunityByName_Ok() { var jsonDataTable = @"[ { 'OpportunityId': '1', 'OpportunityName': 'Squad Care', 'OpportunityRequirements': '.NET Core', 'DesirableRequirements': 'Conhecimento em Kafka', 'DateRegister': '2021-05-05T00:00:00', 'ClosingDate': '2021-05-05T00:00:00', 'CancellationDate': '2021-05-05T00:00:00', 'OpportunityStatus': true, 'CareerId': '1', 'ServiceId': '1', 'ProfessionalLevelId': '1', 'OpportunityTypeId': '1', } ]"; var vacationLeader = "Thomas Anjos"; var listOpportunities = JsonConvert.DeserializeObject <List <Opportunity> >(jsonDataTable); _opportunityService.Setup(x => x.GetAllOpportunities()).Returns(listOpportunities); var control = new OpportunityController(_opportunityService.Object); var result = control.GetOpportunityByName(vacationLeader); var okResult = result as OkObjectResult; Assert.IsNotNull(result); Assert.AreEqual(200, okResult.StatusCode); }
public void InsertOpportunity_Ok() { var jsonDataTable = @"{ 'opportunityId': 1, 'opportunityName': 'Squad Care alterado', 'opportunityRequirements': '.NET Core', 'desirableRequirements': 'Conhecimento em Kafka', 'dateRegister': '2021-05-05T00:00:00', 'closingDate': '2021-05-05T00:00:00', 'cancellationDate': '2021-05-05T00:00:00', 'opportunityStatus': false, 'career': { 'careerId': 1 }, 'service': { 'serviceId': 1 }, 'professionalLevel': { 'professionalLevelId': 1 }, 'opportunityType': { 'opportunityTypeId': 1 } }"; var opportunity = JsonConvert.DeserializeObject <Opportunity>(jsonDataTable); var control = new OpportunityController(_opportunityService.Object); var result = control.InsertOpportunity(opportunity); var okResult = result as OkResult; Assert.AreEqual(200, okResult.StatusCode); }
public When_Opportunity_Controller_SaveSelectedOpportunities_Is_Called_With_No_Selected_Referrals() { _opportunityService = Substitute.For <IOpportunityService>(); _opportunityService.GetOpportunityBasketAsync(1) .Returns(new OpportunityBasketViewModel()); var config = new MapperConfiguration(c => c.AddMaps(typeof(EmployerDtoMapper).Assembly)); var mapper = new Mapper(config); _opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(_opportunityController).Build(); _result = controllerWithClaims.SaveSelectedOpportunitiesAsync(new ContinueOpportunityViewModel { OpportunityId = 1, SubmitAction = "SaveSelectedOpportunities", SelectedOpportunity = new List <SelectedOpportunityItemViewModel> { new SelectedOpportunityItemViewModel { IsSelected = false, OpportunityType = OpportunityType.Referral.ToString() } } }).GetAwaiter().GetResult(); }
public When_Opportunity_Controller_Save_ProvisionGap_Update_Opportunity() { const int opportunityId = 1; _opportunityService = Substitute.For <IOpportunityService>(); _opportunityService.IsNewProvisionGapAsync(opportunityId).Returns(false); var httpContextAccessor = Substitute.For <IHttpContextAccessor>(); var config = new MapperConfiguration(c => { c.AddMaps(typeof(EmployerDtoMapper).Assembly); c.ConstructServicesUsing(type => type.Name.Contains("LoggedInUserEmailResolver") ? new LoggedInUserEmailResolver <SaveProvisionGapViewModel, OpportunityDto>(httpContextAccessor) : type.Name.Contains("LoggedInUserNameResolver") ? (object)new LoggedInUserNameResolver <SaveProvisionGapViewModel, OpportunityDto>(httpContextAccessor) : type.Name.Contains("UtcNowResolver") ? new UtcNowResolver <SaveProvisionGapViewModel, OpportunityDto>(new DateTimeProvider()) : null); }); var mapper = new Mapper(config); var opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(opportunityController) .AddUserName(UserName) .AddEmail(Email) .Build(); httpContextAccessor.HttpContext.Returns(controllerWithClaims.HttpContext); _result = controllerWithClaims.SaveProvisionGapAsync(new SaveProvisionGapViewModel { SearchResultProviderCount = 0, SelectedRouteId = 1, Postcode = "cv12wt", SearchRadius = 10 }).GetAwaiter().GetResult(); }
public When_Recording_Referrals_And_Check_Answers_Is_Submitted_Successfully() { var httpContextAccessor = Substitute.For <IHttpContextAccessor>(); var config = new MapperConfiguration(c => { c.AddMaps(typeof(CheckAnswersDtoMapper).Assembly); c.ConstructServicesUsing(type => type.Name.Contains("LoggedInUserEmailResolver") ? new LoggedInUserEmailResolver <CheckAnswersViewModel, CheckAnswersDto>(httpContextAccessor) : type.Name.Contains("LoggedInUserNameResolver") ? (object)new LoggedInUserNameResolver <CheckAnswersViewModel, CheckAnswersDto>(httpContextAccessor) : type.Name.Contains("UtcNowResolver") ? new UtcNowResolver <CheckAnswersViewModel, CheckAnswersDto>(new DateTimeProvider()) : null); }); var mapper = new Mapper(config); _opportunityService = Substitute.For <IOpportunityService>(); var opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(opportunityController) .AddUserName(ModifiedBy) .Build(); httpContextAccessor.HttpContext.Returns(controllerWithClaims.HttpContext); _result = controllerWithClaims.SaveCheckAnswers(OpportunityId, OpportunityItemId).GetAwaiter().GetResult(); }
public void GetOpportunityByName_Ok() { var jsonOpportunity = @" { 'OpportunityId': '1', 'OpportunityName': 'Squad Care', 'OpportunityRequirements': '.NET Core', 'DesirableRequirements': 'Conhecimento em Kafka', 'DateRegister': '2021-05-05T00:00:00', 'ClosingDate': '2021-05-05T00:00:00', 'CancellationDate': '2021-05-05T00:00:00', 'OpportunityStatus': false, 'CareerId': '1', 'ServiceId': '1', 'ProfessionalLevelId': '1', 'OpportunityTypeId': '1', }"; var opportunity = JsonConvert.DeserializeObject <Opportunity>(jsonOpportunity); var opportunityName = "Squad Care"; _opportunityServiceMock.Setup(x => x.GetOpportunityByName(opportunityName)).Returns(opportunity); var control = new OpportunityController(_opportunityServiceMock.Object); var result = control.GetOpportunityByName(opportunityName); var okResult = result as OkObjectResult; Assert.IsNotNull(okResult); Assert.AreEqual(200, okResult.StatusCode); }
public When_Single_Item_Opportunity_Basket_Confirm_Delete_Opportunity_Item_Is_Loaded() { var config = new MapperConfiguration(c => c.AddMaps(typeof(OpportunityMapper).Assembly)); var mapper = new Mapper(config); _opportunityService = Substitute.For <IOpportunityService>(); _opportunityService.GetConfirmDeleteOpportunityItemAsync(1).Returns(new ConfirmDeleteOpportunityItemViewModel { OpportunityItemId = 1, OpportunityId = 2, CompanyName = "Company Name", CompanyNameAka = "Also Known As", Postcode = "PostCode", JobRole = "JobRole", BasketItemCount = 1, Placements = 1, }); var opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(opportunityController) .AddUserName("CreatedBy") .Build(); _result = controllerWithClaims.GetConfirmDeleteOpportunityItemAsync(1).GetAwaiter().GetResult(); }
public void ExternalWebOpportunityIndex() { // Arrange OpportunityController controller = new OpportunityController(); // Act ViewResult result = controller.Index() as ViewResult; // Assert Assert.IsNotNull(result.ViewData.Count); }
public ActionResult DuplicateLatestOpportunity(Int32 id) { // Get latest Opportunity and redirect to Opportunity/Edit Int32?opportunityId = new OpportunityController().GetLatestOpportunityIdForCourse(id); if (!opportunityId.HasValue) { return(HttpNotFound()); } return(RedirectToAction("Duplicate", "Opportunity", new { id = opportunityId.Value })); }
public void GetOpportunityByName_BadRequest() { var opportunityName = ""; var control = new OpportunityController(_opportunityService.Object); var result = control.GetOpportunityByName(opportunityName); var badRequestResult = result as BadRequestResult; Assert.AreEqual(400, badRequestResult.StatusCode); }
public void InternalWebOpportunityIndex() { // Arrange OpportunityController controller = new OpportunityController(); // Act ViewResult result = controller.Index() as ViewResult; // Assert Assert.AreEqual("Internal Website Application.", result.ViewBag.Message); Assert.AreEqual("Index", result.ViewName); Assert.IsNotNull(result.ViewData.Count); }
public void DeleteOpportunity_BadRequest() { var jsonDataTable = @""; var opportunity = JsonConvert.DeserializeObject <Opportunity>(jsonDataTable); var control = new OpportunityController(_opportunityService.Object); var result = control.DeleteOpportunity(opportunity); var badRequestResult = result as BadRequestResult; Assert.AreEqual(400, badRequestResult.StatusCode); }
public void ExternalWebOpportunityEdit() { // Arrange OpportunityController controller = new OpportunityController(); // Act var opportunityId = 1; ViewResult result = controller.Edit(opportunityId) as ViewResult; var model = (Opportunity)result.ViewData.Model; // Assert Assert.IsNotNull(result); Assert.AreEqual("BREADALBANE CANOE CLUB EVENT", model.OpportunityTitle); }
public When_Opportunity_Controller_Delete_Referral() { var config = new MapperConfiguration(c => c.AddMaps(typeof(CheckAnswersDtoMapper).Assembly)); var mapper = new Mapper(config); _opportunityService = Substitute.For <IOpportunityService>(); var opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(opportunityController) .AddUserName("CreatedBy") .Build(); _result = controllerWithClaims.DeleteReferralAsync(ReferralIdToDelete, OpportunityItemId).GetAwaiter().GetResult(); }
public void DeleteOpportunity_Ok() { var jsonDataTable = @"{ 'OpportunityId': 1 }"; var opportunity = JsonConvert.DeserializeObject <Opportunity>(jsonDataTable); var control = new OpportunityController(_opportunityService.Object); var result = control.DeleteOpportunity(opportunity); var okResult = result as OkResult; Assert.AreEqual(200, okResult.StatusCode); }
public When_Opportunity_Controller_SaveSelectedOpportunities_Is_Called_With_SubmitAction_CompleteProvisionGaps() { _opportunityService = Substitute.For <IOpportunityService>(); var config = new MapperConfiguration(c => c.AddMaps(typeof(EmployerDtoMapper).Assembly)); var mapper = new Mapper(config); _opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(_opportunityController).Build(); _result = controllerWithClaims.SaveSelectedOpportunitiesAsync(new ContinueOpportunityViewModel { SubmitAction = "CompleteProvisionGaps" }).GetAwaiter().GetResult(); }
public async Task And_Opportunity_Doesnt_Exist_Then_Returns_NotFound( int opportunityId, [Frozen] Mock <IMediator> mockMediator, [Greedy] OpportunityController opportunityController) { mockMediator .Setup(x => x.Send(It.Is <GetContactDetailsQuery>(y => y.OpportunityId == opportunityId), It.IsAny <CancellationToken>())) .ReturnsAsync((GetContactDetailsResult)null); var controllerResult = await opportunityController.ContactDetails(opportunityId); var notFoundResult = controllerResult as NotFoundResult; Assert.IsNotNull(controllerResult); Assert.IsNotNull(notFoundResult); }
public void SetUp() { _opportunityId = _fixture.Create <int>(); _accountId = _fixture.Create <long>(); _result = _fixture.Create <GetConfirmationQueryResult>(); _mediator = new Mock <IMediator>(MockBehavior.Strict); _controller = new OpportunityController(Mock.Of <ILogger <OpportunityController> >(), _mediator.Object); _mediator.Setup(x => x.Send(It.Is <GetConfirmationQuery>(query => query.OpportunityId == _opportunityId ), It.IsAny <CancellationToken>())) .ReturnsAsync(_result); }
public When_Placement_Information_Is_Submitted_Above_Max_Placements() { var opportunityService = Substitute.For <IOpportunityService>(); var viewModel = new PlacementInformationSaveViewModel { PlacementsKnown = true, Placements = 1000 }; var config = new MapperConfiguration(c => c.AddMaps(typeof(EmployerMapper).Assembly)); var mapper = new Mapper(config); _opportunityController = new OpportunityController(opportunityService, mapper); _result = _opportunityController.SavePlacementInformationAsync(viewModel).GetAwaiter().GetResult(); }
public When_Recording_Referrals_And_Check_Answers_Is_Loaded() { var config = new MapperConfiguration(c => c.AddMaps(typeof(CheckAnswersDtoMapper).Assembly)); var mapper = new Mapper(config); var dto = new ValidCheckAnswersDtoBuilder().Build(); _opportunityService = Substitute.For <IOpportunityService>(); _opportunityService.GetCheckAnswersAsync(OpportunityItemId).Returns(dto); var opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(opportunityController) .AddUserName(CreatedBy) .Build(); _result = controllerWithClaims.GetCheckAnswersAsync(OpportunityItemId).GetAwaiter().GetResult(); }
public When_MultiItem_Opportunity_Basket_Delete_Opportunity_Item_Is_Posted() { var config = new MapperConfiguration(c => c.AddMaps(typeof(OpportunityMapper).Assembly)); var mapper = new Mapper(config); _opportunityService = Substitute.For <IOpportunityService>(); var opportunityController = new OpportunityController(_opportunityService, mapper); var controllerWithClaims = new ClaimsBuilder <OpportunityController>(opportunityController) .AddUserName("CreatedBy") .Build(); _result = controllerWithClaims.DeleteOpportunityItemAsync(new DeleteOpportunityItemViewModel { OpportunityId = 1, OpportunityItemId = 2, BasketItemCount = 2 }).GetAwaiter().GetResult(); }
public When_Placement_Information_Loaded_With_Placements_Unknown() { _dto.OpportunityId = OpportunityId; _dto.PlacementsKnown = PlacementsKnown; _dto.Placements = Placements; var config = new MapperConfiguration(c => c.AddMaps(typeof(PlacementInformationSaveDtoMapper).Assembly)); var mapper = new Mapper(config); var opportunityService = Substitute.For <IOpportunityService>(); opportunityService.GetPlacementInformationAsync(Arg.Any <int>()).Returns(_dto); var opportunityController = new OpportunityController(opportunityService, mapper); _result = opportunityController.GetPlacementInformationAsync(OpportunityItemId).GetAwaiter().GetResult(); }
public When_Opportunity_Controller_Download_Opportunity_Spreadsheet_Is_Called() { var config = new MapperConfiguration(c => c.AddMaps(typeof(OpportunityMapper).Assembly)); var mapper = new Mapper(config); _opportunityService = Substitute.For <IOpportunityService>(); _opportunityService.GetOpportunitySpreadsheetDataAsync(1).Returns( new FileDownloadDto { FileName = "test_file.xlsx", ContentType = "application/file", FileContent = new byte[] { 01, 02 } }); var opportunityController = new OpportunityController(_opportunityService, mapper); _result = opportunityController.DownloadOpportunitySpreadsheetAsync(1).GetAwaiter().GetResult(); }
public async Task And_Opportunity_Exists_Then_Returns_Ok_And_Pledge( int opportunityId, GetContactDetailsResult getContactDetailsResult, [Frozen] Mock <IMediator> mockMediator, [Greedy] OpportunityController opportunityController) { mockMediator .Setup(x => x.Send(It.Is <GetContactDetailsQuery>(y => y.OpportunityId == opportunityId), It.IsAny <CancellationToken>())) .ReturnsAsync(getContactDetailsResult); var controllerResult = await opportunityController.ContactDetails(opportunityId); var okObjectResult = controllerResult as OkObjectResult; var getContactDetailsResponse = okObjectResult.Value as GetContactDetailsResponse; Assert.IsNotNull(controllerResult); Assert.IsNotNull(okObjectResult); Assert.IsNotNull(getContactDetailsResponse); }
public async Task Then_Returns_Accounts( int opportunityId, string userId, GetSelectAccountQueryResult getSelectAccountQueryResult, [Frozen] Mock <IMediator> mockMediator, [Greedy] OpportunityController opportunityController) { mockMediator .Setup(x => x.Send(It.Is <GetSelectAccountQuery>(y => y.UserId == userId), It.IsAny <CancellationToken>())) .ReturnsAsync(getSelectAccountQueryResult); var controllerResult = await opportunityController.SelectAccount(opportunityId, userId) as OkObjectResult; var response = controllerResult.Value as GetSelectAccountResponse; Assert.IsNotNull(controllerResult); Assert.AreEqual(controllerResult.StatusCode, (int)HttpStatusCode.OK); Assert.IsNotNull(response); Assert.AreEqual(getSelectAccountQueryResult.Accounts.Count(), response.Accounts.Count()); }