Ejemplo n.º 1
0
        /// <summary>
        ///     Initializes a new instance of the <see cref="UserController" /> class.
        /// </summary>
        /// <param name="orchestrator">The orchestrator.</param>
        /// <param name="benchmarkHelper">The benchmark helper</param>
        /// <exception cref="System.ArgumentNullException">Exception thrown if the orchestrator is null.</exception>
        public UserController(IUserOrchestrator orchestrator, IBenchmarkHelper benchmarkHelper)
            : base(benchmarkHelper)
        {
            if (orchestrator == null)
            {
                throw new ArgumentNullException(nameof(orchestrator));
            }

            this.orchestrator = orchestrator;
        }
 public void TearDown()
 {
     orchestrator                = null;
     assembler                   = null;
     dataAccess                  = null;
     validRegisterViewModel      = null;
     validRegisterUserRequest    = null;
     invalidRegisterUserRequest  = null;
     validRegisterUserResponse   = null;
     invalidRegisterUserResponse = null;
     invalidRegisterViewModel    = null;
     invalidLoginViewModel       = null;
     validLoginViewModel         = null;
     validValidateUserRequest    = null;
     invalidValidateUserRequest  = null;
     validValidateUserResponse   = null;
     invalidValidateUserResponse = null;
 }
Ejemplo n.º 3
0
        public void SetUp()
        {
            validRegisterUserRequest =
                new RegisterUserRequest
            {
                DateOfBirth  = DateTime.Today,
                EmailAddress = "TEST",
                FirstName    = "TEST",
                LastName     = "TEST",
                Password     = "******",
                Username     = "******"
            };

            validDataModel = new UserDataModel
            {
                Id           = Guid.NewGuid(),
                CreationTime = DateTime.Now,
                DateOfBirth  = DateTime.Today,
                EmailAddress = "TEST",
                FirstName    = "TEST",
                Hash         = new byte[] { },
                Iterations   = 1,
                LastName     = "TEST",
                Salt         = new byte[] { }
            };

            validRegisterUserResponse =
                new RegisterUserResponse
            {
                RegisterSuccess  = true,
                RequestReference = validRegisterUserRequest.RequestReference
            };

            invalidDataModel            = new UserDataModel();
            invalidRegisterUserRequest  = new RegisterUserRequest();
            invalidRegisterUserResponse = new RegisterUserResponse {
                Errors = { new ResponseErrorWrapper() }
            };
            exceptionRegisterUserRequest = new RegisterUserRequest {
                DateOfBirth = DateTime.MinValue
            };

            validValidateUserRequest =
                new ValidateUserRequest {
                EmailAddress = "TEST", Password = "******", Username = "******"
            };
            invalidValidateUserRequest   = new ValidateUserRequest();
            exceptionValidateUserRequest = new ValidateUserRequest {
                EmailAddress = "EXC", Password = "******", Username = "******"
            };

            invalidValidateUserResponse = new ValidateUserResponse {
                Errors = { new ResponseErrorWrapper() }
            };
            validValidateUserResponse = new ValidateUserResponse {
                LoginSuccess = true
            };

            assembler  = Substitute.For <IUserAssembler>();
            repository = Substitute.For <IUserRepository>();

            assembler.NewUserDataModel(validRegisterUserRequest).Returns(validDataModel);
            assembler.NewUserDataModel(invalidRegisterUserRequest).Returns(invalidDataModel);
            assembler.NewRegisterUserResponse(validDataModel, validRegisterUserRequest.RequestReference)
            .Returns(validRegisterUserResponse);
            assembler.NewUserDataModel(exceptionRegisterUserRequest).Throws(new Exception("TEST"));
            assembler.NewRegisterUserResponse(invalidDataModel, invalidRegisterUserRequest.RequestReference)
            .Returns(invalidRegisterUserResponse);
            assembler.NewValidateUserResponse(validDataModel, validValidateUserRequest.RequestReference)
            .Returns(validValidateUserResponse);
            assembler.NewValidateUserResponse(invalidDataModel, invalidValidateUserRequest.RequestReference)
            .Returns(invalidValidateUserResponse);


            repository.RegisterUser(validDataModel).Returns(validDataModel);
            repository.RegisterUser(invalidDataModel).Returns(invalidDataModel);
            repository.GetUser(validValidateUserRequest.EmailAddress, validValidateUserRequest.Password)
            .Returns(validDataModel);
            repository.GetUser(invalidValidateUserRequest.EmailAddress, invalidRegisterUserRequest.Password)
            .Returns(invalidDataModel);
            repository.GetUser(exceptionValidateUserRequest.EmailAddress, exceptionValidateUserRequest.Password)
            .Throws(new Exception("TEST"));

            errorHelper = Substitute.For <IErrorHelper>();

            errorHelper.Create(Arg.Any <Exception>(), Arg.Any <string>(), Arg.Any <Type>(), Arg.Any <string>())
            .Returns(new ResponseErrorWrapper());
            errorHelper.Create(Arg.Any <string>(), Arg.Any <string>(), Arg.Any <Type>(), Arg.Any <string>())
            .Returns(new ResponseErrorWrapper());

            orchestrator = new UserOrchestrator(assembler, repository, errorHelper);
        }
Ejemplo n.º 4
0
 public void Constructor_NullParams_ThrowsArgumentNullException()
 {
     Assert.Throws <ArgumentNullException>(delegate { orchestrator = new UserOrchestrator(null, repository, errorHelper); });
     Assert.Throws <ArgumentNullException>(delegate { orchestrator = new UserOrchestrator(assembler, null, errorHelper); });
 }
        public void SetUp()
        {
            assembler  = Substitute.For <IUserAssembler>();
            dataAccess = Substitute.For <IUserDataAccess>();

            errorHelper = Substitute.For <IErrorHelper>();

            errorHelper.Create(Arg.Any <Exception>(), Arg.Any <string>(), Arg.Any <Type>(), Arg.Any <string>())
            .Returns(new ResponseErrorWrapper());
            errorHelper.Create(Arg.Any <string>(), Arg.Any <string>(), Arg.Any <Type>(), Arg.Any <string>())
            .Returns(new ResponseErrorWrapper());

            validRegisterUserRequest = new RegisterUserRequest
            {
                DateOfBirth  = DateTime.Now,
                EmailAddress = "TEST",
                FirstName    = "TEST",
                LastName     = "TEST",
                Password     = "******",
                Username     = "******"
            };

            validValidateUserResponse = new ValidateUserResponse
            {
                LoginSuccess     = true,
                RequestReference = Guid.NewGuid(),
                User             =
                    new UserProxy
                {
                    EmailAddress = "TEST",
                    DateOfBirth  = DateTime.Now,
                    FirstName    = "TEST",
                    Id           = Guid.NewGuid(),
                    LastName     = "TEST"
                }
            };

            invalidValidateUserResponse = new ValidateUserResponse {
                Errors = { new ResponseErrorWrapper() }
            };

            validValidateUserRequest = new ValidateUserRequest
            {
                EmailAddress = "TEST",
                Password     = "******",
                Username     = "******"
            };

            invalidValidateUserRequest = new ValidateUserRequest
            {
                EmailAddress = string.Empty,
                Password     = string.Empty,
                Username     = string.Empty
            };

            validLoginViewModel = new LoginViewModel {
                EmailAddress = "TEST", Password = "******", ReturnUrl = "TEST"
            };

            invalidLoginViewModel = new LoginViewModel
            {
                EmailAddress = string.Empty,
                Password     = string.Empty,
                ReturnUrl    = string.Empty
            };

            invalidRegisterViewModel = new RegisterViewModel
            {
                AcceptTermsAndConditions = false,
                ConfirmPassword          = string.Empty,
                DateOfBirth  = DateTime.MinValue,
                EmailAddress = string.Empty,
                FirstName    = string.Empty,
                LastName     = string.Empty,
                Password     = string.Empty
            };

            validRegisterUserResponse = new RegisterUserResponse
            {
                RequestReference = Guid.NewGuid(),
                RegisterSuccess  = true
            };

            invalidRegisterUserResponse = new RegisterUserResponse
            {
                RequestReference = Guid.NewGuid(),
                Errors           =
                {
                    new ResponseErrorWrapper()
                },
                RegisterSuccess = false
            };

            validRegisterViewModel = new RegisterViewModel
            {
                AcceptTermsAndConditions = true,
                ConfirmPassword          = "******",
                DateOfBirth  = DateTime.Now,
                EmailAddress = "TEST",
                FirstName    = "TEST",
                LastName     = "TEST",
                Password     = "******"
            };

            invalidRegisterUserRequest = new RegisterUserRequest
            {
                DateOfBirth  = DateTime.MinValue,
                EmailAddress = string.Empty,
                FirstName    = string.Empty,
                LastName     = string.Empty,
                Password     = string.Empty,
                Username     = string.Empty
            };

            assembler.NewRegisterUserRequest(invalidRegisterViewModel).Returns(invalidRegisterUserRequest);
            assembler.NewRegisterUserRequest(validRegisterViewModel).Returns(validRegisterUserRequest);
            assembler.NewRegisterUserRequest(null).Throws(new Exception("TEST EXCEPTION"));

            assembler.NewValidateUserRequest(invalidLoginViewModel).Returns(invalidValidateUserRequest);
            assembler.NewValidateUserRequest(validLoginViewModel).Returns(validValidateUserRequest);
            assembler.NewValidateUserRequest(null).Throws(new Exception("TEST EXCEPTION"));

            assembler.NewClaimsIdentity(validValidateUserResponse).Returns(new ClaimsIdentity());

            dataAccess.RegisterUser(invalidRegisterUserRequest).Returns(invalidRegisterUserResponse);
            dataAccess.RegisterUser(validRegisterUserRequest).Returns(validRegisterUserResponse);

            dataAccess.ValidateUser(invalidValidateUserRequest).Returns(invalidValidateUserResponse);
            dataAccess.ValidateUser(validValidateUserRequest).Returns(validValidateUserResponse);

            orchestrator = new UserOrchestrator(assembler, dataAccess, errorHelper);
        }