Esempio n. 1
0
 public void SetRole(EmbassyEmployeeRole role)
 {
     Apply(new EmbassyEmployeeEvents.RoleUpdated
     {
         Role = role
     });
 }
Esempio n. 2
0
 public EmbassyEmployee(FullName fullName, Email email, Password password, EmbassyEmployeeRole role)
 {
     Apply(new EmbassyEmployeeEvents.Registered
     {
         Id       = Guid.NewGuid(),
         FullName = fullName,
         Email    = email,
         Password = password,
         Role     = role
     });
 }
            public void CreateAnEmployee_ValidParameters()
            {
                // Arrange
                var passwordHasher             = new PasswordHasher();
                var fullName                   = FullName.FromString("Oleksandr Torianyk");
                var email                      = Email.FromString("*****@*****.**");
                var password                   = Password.FromString("strong password", passwordHasher);
                const EmbassyEmployeeRole role = EmbassyEmployeeRole.Admin;

                // Act
                var employee = new EmbassyEmployee(fullName, email, password, role);

                //Assert
                Assert.Equal(fullName, employee.FullName);
                Assert.Equal(email, employee.Email);
                Assert.Equal(password, employee.Password);
                Assert.Equal(role, employee.Role);
            }
            public void ChangeStatus_Called()
            {
                // Arrange
                var passwordHasher             = new PasswordHasher();
                var fullName                   = FullName.FromString("Oleksandr Torianyk");
                var email                      = Email.FromString("*****@*****.**");
                var password                   = Password.FromString("strong password", passwordHasher);
                const EmbassyEmployeeRole role = EmbassyEmployeeRole.Admin;
                var employee                   = new EmbassyEmployee(fullName, email, password, role);

                // Act
                employee.Fire();

                //Assert
                Assert.Equal(fullName, employee.FullName);
                Assert.Equal(email, employee.Email);
                Assert.Equal(password, employee.Password);
                Assert.Equal(EmbassyEmployeeRole.Discharged, employee.Role);
            }
Esempio n. 5
0
        protected override void When(object @event)
        {
            switch (@event)
            {
            case EmbassyEmployeeEvents.Registered e:
                Id       = new EmbassyEmployeeId(e.Id);
                FullName = FullName.FromString(e.FullName);
                Email    = Email.FromString(e.Email);
                Password = new Password(e.Password);
                Role     = e.Role;
                break;

            case EmbassyEmployeeEvents.RoleUpdated e:
                Role = e.Role;
                break;

            case EmbassyEmployeeEvents.Fired _:
                Role = EmbassyEmployeeRole.Discharged;
                break;
            }
        }