protected override void Context()
        {
            base.Context();

            _searchAccountsRequest = Builder<SearchAccountsRequest>.CreateNew().Build();
            AuthorizationService.Stub(
                x => x.CanExecute(Arg<string>.Is.Equal(Username), Arg<Type>.Is.Equal(typeof (SearchAccountsRequest))))
                .Return(false);
            _expectedResponse = new SearchAccountsResponse
                                    {
                                        Success = false,
                                        Errors = new List<string>
                                                     {
                                                         "User is not authorized to Search Accounts",
                                                     },
                                    };
        }
        protected override void Context()
        {
            base.Context();
            _searchAccountsRequest = Builder<SearchAccountsRequest>.CreateNew().Build();

            AuthorizationService.Stub(
                x => x.CanExecute(Arg<string>.Is.Equal(Username), Arg<Type>.Is.Equal(typeof (SearchAccountsRequest))))
                .Return(true);

            _searchAccountsResponseReturnedFromRepository = new SearchAccountsResponse
                                                                {
                                                                    Accounts = new List<Account>
                                                                                   {
                                                                                       new Account(),
                                                                                       new Account(),
                                                                                       new Account(),
                                                                                   },
                                                                };

            AccountRepository.Stub(x => x.Search(Arg<SearchAccountsRequest>.Is.Equal(_searchAccountsRequest)))
                .Return(_searchAccountsResponseReturnedFromRepository);

            _expectedReponse = _searchAccountsResponseReturnedFromRepository;
        }
Esempio n. 3
0
        public SearchAccountsResponse SearchAccounts(string username, SearchAccountsRequest searchAccountsRequest)
        {
            if (!_authorizationService.CanExecute(username, "ViewAccounts"))
                return new SearchAccountsResponse
                           {
                               Success = false,
                               Errors = new List<string>
                                            {
                                                "User is not authorized to View Accounts",
                                            },
                           };

            return _accountRepository.Search(searchAccountsRequest);
        }
Esempio n. 4
0
        public SearchAccountsResponse Search(SearchAccountsRequest searchAccountsRequest)
        {
            using (var context = new PRToolsEntities())
            {
                IQueryable<Account> accounts = from account in context.Accounts
                                               where
                                                   account.FirstName ==
                                                   (searchAccountsRequest.FirstName ?? account.FirstName)
                                                   &&
                                                   account.LastName ==
                                                   (searchAccountsRequest.LastName ?? account.LastName)
                                                   &&
                                                   account.Username ==
                                                   (searchAccountsRequest.Username ?? account.Username)
                                                   &&
                                                   account.Email ==
                                                   (searchAccountsRequest.EmailAddress ?? account.Email)
                                                   && account.Username != "admin"
                                               select account;

                return new SearchAccountsResponse
                           {
                               Success = true,
                               Accounts = accounts.Select(x => new Domain.Account
                                                                   {
                                                                       EmailAddress = x.Email,
                                                                       FirstName = x.FirstName,
                                                                       LastName = x.LastName,
                                                                       Role =
                                                                           (Domain.Role)
                                                                           Enum.Parse(typeof (Domain.Role),
                                                                                      x.Role.RoleName),
                                                                       Username = x.Username,
                                                                   }),
                           };
            }
        }