Example #1
0
        public async ValueTask Setup()
        {
            _mapper            = Resolve <IMapper>();
            _leadRepository    = Resolve <ILeadRepository>();
            _accountRepository = Resolve <IAccountRepository>();
            _systemUnderTest   = new LeadController(_leadRepository, _accountRepository, _mapper, _urlOptions);
            await DropOrRestoreTestDbs("Dbs_Restore");

            _leadForTest      = (LeadInputModel)LeadInputModelMock.leadInputModel.Clone();
            _accountIMForTest = (AccountInputModel)AccountInputModelMock.accountInputModel.Clone();

            foreach (var item in LeadInputModelMock.leadsToInsertForSearchTest)
            {
                _leadsToInsertForSearch.Add((LeadInputModel)item.Clone());
            }

            foreach (var leadModel in _leadsToInsertForSearch)
            {
                ActionResult <LeadOutputModel> leadsInsertActionResult
                    = await _systemUnderTest.AddLead(leadModel);

                LeadOutputModel outputLead = AssertAndConvert(leadsInsertActionResult);
                leadModel.Id = outputLead.Id;
                _leadsForCompare.Add(outputLead);
                _accountIMForTest.LeadId = (long)outputLead.Id;
                ActionResult <AccountOutputModel> accountForSearchActionResult = await _systemUnderTest.AddAccount(_accountIMForTest);

                var accountForSearch = AssertAndConvert(accountForSearchActionResult);
                _accountsOMForTest.Add(accountForSearch);
            }
        }
Example #2
0
        protected void DeepEqualForLeadModels(LeadInputModel inputModel, LeadOutputModel outputModel)
        {
            Assert.NotNull(outputModel.CityName);
            Assert.NotNull(outputModel.RegistrationDate);
            Assert.NotNull(outputModel.Accounts);
            var model  = mapper.Map <Lead>(inputModel);
            var model1 = mapper.Map <LeadOutputModel>(model);

            Assert.IsTrue(model1.EqualsForLeadTest(outputModel));
        }
Example #3
0
        private async ValueTask TestAddLead()
        {
            ActionResult <LeadOutputModel> actionResult = await _systemUnderTest.AddLead(_leadForTest);

            LeadOutputModel model = AssertAndConvert(actionResult);

            _leadForTest.Id          = model.Id;
            _accountIMForTest.LeadId = (long)model.Id;
            DeepEqualForLeadModels(_leadForTest, model);
        }
Example #4
0
        private async ValueTask TestUpdateLead()
        {
            ChangeLead(_leadForTest);
            ActionResult <LeadOutputModel> actionResult = await _systemUnderTest.UpdateLead(_leadForTest);

            LeadOutputModel model = AssertAndConvert(actionResult);

            DeepEqualForLeadModels(_leadForTest, model);
            Assert.NotNull(model.LastUpdateDate);
        }
Example #5
0
        private async ValueTask TestSelectLead()
        {
            ActionResult <LeadOutputModel> returnedLeadActionResult = await _systemUnderTest.GetLeadById(Convert.ToInt64(_leadForTest.Id));

            LeadOutputModel returnedLead = AssertAndConvert(returnedLeadActionResult);

            DeepEqualForLeadModels(_leadForTest, returnedLead);
            ActionResult <List <LeadOutputModel> > returnedLeadsActionResult = await _systemUnderTest.GetAllLeads();

            List <LeadOutputModel> listActual = AssertAndConvert(returnedLeadsActionResult);

            CollectionAssert.IsNotEmpty(listActual);
            CollectionAssert.Contains(listActual, returnedLead);
        }