コード例 #1
0
        public IBusinessDataMediator CreateBusinessDataMediator(EventHandler <BusinessConsultEventArgs> businessConsultHandler, EventHandler <BusinessChangeEventArgs> businessChangeHandler)
        {
            BusinessDataMediator mediator = new BusinessDataMediator();

            mediator.AppendBusinessConsultNeedHandler(businessConsultHandler);
            mediator.AppendBusinessChangeNeedHandler(businessChangeHandler);

            return(mediator);
        }
コード例 #2
0
        public void GenerateUserHashDoLogin_WithInvalidPasswrod_Test()
        {
            int    id       = 555;
            string username = "******";

            string hash = "223cb19e27ef605dcef5f03d977bf3c6cdc5161d489800117bddebdc2b0d08661ff5add09c812a3fdb9f5d98c737480994646f28cd63739fe565455c79b7e6ca";

            BusinessDataMediator businessEvents = new BusinessDataMediator();
            User user = new User(id, username, hash, true, businessEvents);

            Assert.AreEqual <bool>(false, user.DoLogin("Invalid!"));
        }
コード例 #3
0
        public void Handle_Inactivate_Test()
        {
            #region === ARRANGE ===

            int businessConsultNumber = 0;
            int businessChangeNumber  = 0;

            int    id       = 555;
            string username = "******";
            string hash     = "223cb19e27ef605dcef5f03d977bf3c6cdc5161d489800117bddebdc2b0d08661ff5add09c812a3fdb9f5d98c737480994646f28cd63739fe565455c79b7e6ca";

            Mock <IMediatorsFactory> mockedBusinessEventsFactory = new Mock <IMediatorsFactory>();
            Mock <IInfrastructureOperationsFactory> mockedInfrastructureOperationsFactory = new Mock <IInfrastructureOperationsFactory>();
            BusinessDataMediator businessDataMediator = new BusinessDataMediator();
            User user = new User(id, username, hash, true, businessDataMediator);

            businessDataMediator.AppendBusinessConsultNeedHandler((sender, args) => {
                args.result = new List <User>()
                {
                    user
                };
                businessConsultNumber++;
            });

            businessDataMediator.AppendBusinessChangeNeedHandler((sender, handler) => { businessChangeNumber++; });

            mockedBusinessEventsFactory.Setup(x => x.CreateBusinessDataMediator(It.IsAny <EventHandler <BusinessConsultEventArgs> >(), It.IsAny <EventHandler <BusinessChangeEventArgs> >())).Returns(businessDataMediator);

            InactivateUser command = new InactivateUser {
                Id = new Guid(), userId = id
            };
            UsersComandHandler comandHandler = new UsersComandHandler(mockedBusinessEventsFactory.Object, mockedInfrastructureOperationsFactory.Object);

            #endregion

            #region === ACT ===

            comandHandler.Handle(command);


            #endregion

            #region === ASSERT ===

            Assert.AreEqual <int>(1, businessConsultNumber);
            Assert.AreEqual <int>(1, businessChangeNumber);
            Assert.AreEqual <bool>(false, user.active);

            #endregion
        }
コード例 #4
0
        public void Handle_SignUpUser_Test()
        {
            #region === ARRANGE ===

            string expectedNewUserName = "******";

            int businessChancesNumber = 0;
            int businessConsultNumber = 0;

            Mock <IMediatorsFactory> mockedBusinessEventsFactory = new Mock <IMediatorsFactory>();
            Mock <IInfrastructureOperationsFactory> mockedInfrastructureOperationsFactory = new Mock <IInfrastructureOperationsFactory>();
            BusinessDataMediator businessDataMediator = new BusinessDataMediator();

            businessDataMediator.AppendBusinessChangeNeedHandler((sender, args) => {
                businessChancesNumber++;
            });

            businessDataMediator.AppendBusinessConsultNeedHandler((sender, args) => {
                args.result = new List <User>();
                businessConsultNumber++;
            });

            mockedBusinessEventsFactory.Setup(x => x.CreateBusinessDataMediator(It.IsAny <EventHandler <BusinessConsultEventArgs> >(), It.IsAny <EventHandler <BusinessChangeEventArgs> >())).Returns(businessDataMediator);

            SignUpUser comand = new SignUpUser {
                Id = new Guid(), UserName = expectedNewUserName, Password = "******"
            };
            UsersComandHandler comandHandler = new UsersComandHandler(mockedBusinessEventsFactory.Object, mockedInfrastructureOperationsFactory.Object);

            #endregion

            #region === ACT ===

            comandHandler.Handle(comand);

            #endregion

            #region === ASSERT ===

            Assert.AreEqual <int>(1, businessConsultNumber);
            Assert.AreEqual <int>(2, businessChancesNumber);

            #endregion
        }
コード例 #5
0
        public void Inactivate_Test()
        {
            bool   updateTriggered = false;
            int    id       = 555;
            string username = "******";

            string hash = "223cb19e27ef605dcef5f03d977bf3c6cdc5161d489800117bddebdc2b0d08661ff5add09c812a3fdb9f5d98c737480994646f28cd63739fe565455c79b7e6ca";

            BusinessDataMediator businessEvents = new BusinessDataMediator();

            businessEvents.AppendBusinessChangeNeedHandler((sender, args) => { updateTriggered = true; });
            User user = new User(id, username, hash, true, businessEvents);


            user.Inactivate();

            Assert.AreEqual <bool>(true, updateTriggered);
            Assert.AreEqual <bool>(false, user.active);
        }
コード例 #6
0
        public void Handle_UserLogin_Test()
        {
            #region === ARRANGE ===

            int businessConsultNumber = 0;

            int    id       = 555;
            string username = "******";
            string password = "******";
            string hash     = "223cb19e27ef605dcef5f03d977bf3c6cdc5161d489800117bddebdc2b0d08661ff5add09c812a3fdb9f5d98c737480994646f28cd63739fe565455c79b7e6ca";

            Mock <IMediatorsFactory> mockedBusinessEventsFactory = new Mock <IMediatorsFactory>();
            Mock <IMediatorsFactory> mockedBusinessEventsFactoryForNoUserFound            = new Mock <IMediatorsFactory>();
            Mock <IInfrastructureOperationsFactory> mockedInfrastructureOperationsFactory = new Mock <IInfrastructureOperationsFactory>();
            BusinessDataMediator businessDataMediator = new BusinessDataMediator();
            BusinessDataMediator businessDataMediatorForNoUserFound = new BusinessDataMediator();
            User user = new User(id, username, hash, true, businessDataMediator);

            businessDataMediator.AppendBusinessConsultNeedHandler((sender, args) => {
                args.result = new List <User>()
                {
                    user
                };
                businessConsultNumber++;
            });

            businessDataMediatorForNoUserFound.AppendBusinessConsultNeedHandler((sender, args) => {
                args.result = new List <User>();
                businessConsultNumber++;
            });

            mockedBusinessEventsFactory.Setup(x => x.CreateBusinessDataMediator(It.IsAny <EventHandler <BusinessConsultEventArgs> >(), It.IsAny <EventHandler <BusinessChangeEventArgs> >())).Returns(businessDataMediator);
            mockedBusinessEventsFactoryForNoUserFound.Setup(x => x.CreateBusinessDataMediator(It.IsAny <EventHandler <BusinessConsultEventArgs> >(), It.IsAny <EventHandler <BusinessChangeEventArgs> >())).Returns(businessDataMediatorForNoUserFound);

            UserLogin command1 = new UserLogin {
                Id = new Guid(), UserName = username, Password = password
            };
            UserLogin command2 = new UserLogin {
                Id = new Guid(), UserName = username, Password = "******"
            };
            UserLogin command3 = new UserLogin {
                Id = new Guid(), UserName = username, Password = password
            };
            UsersComandHandler comandHandler = new UsersComandHandler(mockedBusinessEventsFactory.Object, mockedInfrastructureOperationsFactory.Object);
            UsersComandHandler comandHandlerForNoUserFound = new UsersComandHandler(mockedBusinessEventsFactoryForNoUserFound.Object, mockedInfrastructureOperationsFactory.Object);

            #endregion

            #region === ACT ===

            comandHandler.Handle(command1);
            comandHandler.Handle(command2);
            comandHandlerForNoUserFound.Handle(command3);

            #endregion

            #region === ASSERT ===

            Assert.AreEqual <int>(3, businessConsultNumber);
            Assert.AreEqual <int>(id, command1.CommandResult);
            Assert.AreEqual <int>(0, command2.CommandResult);
            Assert.AreEqual <int>(0, command3.CommandResult);

            #endregion
        }