public void SetRole(EmbassyEmployeeRole role) { Apply(new EmbassyEmployeeEvents.RoleUpdated { Role = role }); }
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); }
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; } }