public void Can_Retrieve_Company_By_Its_Id()
        {
            // Setup
            var authProcessMock = new Mock <IProcess <CompanyQueryAuthorizationParams, AuthorizationResultViewModel> >();

            authProcessMock.Setup(x => x.Execute(It.IsAny <CompanyQueryAuthorizationParams>())).Returns(new AuthorizationResultViewModel {
                UserAuthorized = true
            });

            Company company1 = new Company {
                Name = "Company 1"
            };
            Company company2 = new Company {
                Name = "Company 2"
            };
            Company company3 = new Company {
                Name = "Company 3"
            };

            _unitOfWork.Companies.Add(company1);
            _unitOfWork.Companies.Add(company2);
            _unitOfWork.Companies.Add(company3);

            _unitOfWork.Commit();

            // Act
            Company result = new CompanyByIdQuery(_unitOfWork, authProcessMock.Object).WithCompanyId(company2.Id).Execute();

            // Verify
            Assert.IsNotNull(result, "Returned company entity was null");
            Assert.AreEqual(company2.Id, result.Id, "The returned company had an incorrect id value");
            Assert.AreEqual(company2.Name, result.Name, "The returned company had an incorrect name value");
        }
Exemple #2
0
 public JigsawCompanySearchProcesses(MyJobLeadsDbContext context,
                                     CompanyByIdQuery companyQuery,
                                     CreateCompanyCommand createCompanyCmd,
                                     EditCompanyCommand editCompanyCmd)
 {
     _context          = context;
     _companyByIdQuery = companyQuery;
     _createCompanyCmd = createCompanyCmd;
     _editCompanyCmd   = editCompanyCmd;
 }
 public JigsawContactSearchProcesses(MyJobLeadsDbContext context,
                                     IProcess <GetUserJigsawCredentialsParams, JigsawCredentialsViewModel> getJsCredProc,
                                     CreateCompanyCommand createCompanyCmd,
                                     CompanyByIdQuery compByIdQuery,
                                     CreateContactCommand createContactcmd)
 {
     _context = context;
     _getJigsawCredentialsProc = getJsCredProc;
     _createCompanyCmd         = createCompanyCmd;
     _companyByIdQuery         = compByIdQuery;
     _createContactCmd         = createContactcmd;
 }
Exemple #4
0
 public LinkedInPositionSearchProcesses(MyJobLeadsDbContext context,
                                        IProcess <VerifyUserLinkedInAccessTokenParams, UserAccessTokenResultViewModel> verifyLiTokenProcess,
                                        CreateCompanyCommand createCompanyCmd,
                                        IProcess <CreatePositionParams, PositionDisplayViewModel> createPositionProcess,
                                        CompanyByIdQuery companyQuery)
 {
     _context = context;
     _verifyLiTokenProcess  = verifyLiTokenProcess;
     _createCompanyCmd      = createCompanyCmd;
     _createPositionProcess = createPositionProcess;
     _companyQuery          = companyQuery;
 }
Exemple #5
0
 public PositionController(MyJobLeadsDbContext context,
                           IProcess <CreatePositionParams, PositionDisplayViewModel> createProcess,
                           IProcess <EditPositionParams, PositionDisplayViewModel> editProcess,
                           IProcess <GetPositionListForUserParams, PositionListViewModel> getPositionListProcess,
                           PositionByIdQuery posByIdQuery,
                           CompanyByIdQuery compByIdQuery)
 {
     _context                = context;
     _createProcess          = createProcess;
     _editProcess            = editProcess;
     _posByIdQuery           = posByIdQuery;
     _companyByIdQuery       = compByIdQuery;
     _getPositionListProcess = getPositionListProcess;
 }
 public JigsawController(MyJobLeadsDbContext context,
                         IProcess <JigsawCompanySearchParams, SearchResultsViewModel <ExternalCompanySearchResultViewModel> > searchProcess,
                         IProcess <JigsawCompanyDetailsParams, ExternalCompanyDetailsViewModel> companyDetailsProc,
                         IProcess <AddJigsawCompanyParams, CompanyAddedViewResult> addCompProc,
                         IProcess <MergeJigsawCompanyParams, GeneralSuccessResultViewModel> mergeCompProc,
                         CompanyByIdQuery compByIdQuery)
 {
     _context               = context;
     _searchProcess         = searchProcess;
     _companyDetailsProcess = companyDetailsProc;
     _addCompanyProcess     = addCompProc;
     _companyByIdQuery      = compByIdQuery;
     _mergeCompanyProcess   = mergeCompProc;
 }
Exemple #7
0
        public virtual ActionResult Add(int companyId)
        {
            var company = new CompanyByIdQuery(_unitOfWork, _companyAuthProcess).WithCompanyId(companyId)
                          .RequestedByUserId(CurrentUserId)
                          .Execute();

            if (company == null)
            {
                ViewBag.EntityType = "Company";
                return(View(MVC.Shared.Views.EntityNotFound));
            }

            var model = new EditContactViewModel(company);

            return(View(MVC.Contact.Views.Edit, model));
        }
        public virtual ActionResult Edit(int id)
        {
            var company = new CompanyByIdQuery(_unitOfWork, _companyAuthProcess).WithCompanyId(id).RequestedByUserId(CurrentUserId).Execute();

            if (company == null)
            {
                ViewBag.EntityType = "Company";
                return(View(MVC.Shared.Views.EntityNotFound));
            }

            var statuses = _serviceFactory.GetService <LeadStatusesAvailableForCompaniesQuery>().Execute();

            return(View(new EditCompanyViewModel(company)
            {
                AvailableLeadStatuses = statuses
            }));
        }
        public virtual ActionResult Details(int id, bool showPositions = false)
        {
            var company = new CompanyByIdQuery(_unitOfWork, _companyAuthProcess).WithCompanyId(id)
                          .RequestedByUserId(CurrentUserId)
                          .Execute();

            if (company == null)
            {
                ViewBag.EntityType = "Company";
                return(View(MVC.Shared.Views.EntityNotFound));
            }

            var model = new CompanyDisplayViewModel(company)
            {
                showPositions = showPositions
            };

            return(View(model));
        }
        public void Execute_Returns_Null_Company_When_Id_Not_Found()
        {
            // Setup
            var authProcessMock = new Mock <IProcess <CompanyQueryAuthorizationParams, AuthorizationResultViewModel> >();

            authProcessMock.Setup(x => x.Execute(It.IsAny <CompanyQueryAuthorizationParams>())).Returns(new AuthorizationResultViewModel {
                UserAuthorized = true
            });

            Company company = new Company();

            _unitOfWork.Companies.Add(company);
            _unitOfWork.Commit();

            int id = company.Id + 1;

            // Act
            Company result = new CompanyByIdQuery(_unitOfWork, authProcessMock.Object).WithCompanyId(id).Execute();

            // Verify
            Assert.IsNull(result, "Query returned a non-null company");
        }
        public void Execute_Returns_Null_Company_When_User_Not_Authorized()
        {
            // Setup
            var authProcessMock = new Mock <IProcess <CompanyQueryAuthorizationParams, AuthorizationResultViewModel> >();

            authProcessMock.Setup(x => x.Execute(It.IsAny <CompanyQueryAuthorizationParams>())).Returns(new AuthorizationResultViewModel {
                UserAuthorized = false
            });

            Company company = new Company();

            _unitOfWork.Companies.Add(company);
            _unitOfWork.Commit();

            // Act
            Company result = new CompanyByIdQuery(_unitOfWork, authProcessMock.Object)
                             .WithCompanyId(company.Id)
                             .RequestedByUserId(23)
                             .Execute();

            // Verify
            Assert.IsNull(result, "A non-null company was returned");
            authProcessMock.Verify(x => x.Execute(It.Is <CompanyQueryAuthorizationParams>(y => y.RequestingUserId == 23)));
        }