public void UserAggregate_AddClaim_WillPersist() { // create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); user.AddClaim("LOCAL AUTHORITY", "LOCAL AUTHORITY", "schema", "Raffaeu", "schema#string"); databaseContext.Set <UserAggregate>().Add(user); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var expectedUser = databaseContext.Set <UserAggregate>() .Include(x => x.Claims) .First(); expectedUser.Claims.Count.Should().Be(1); } }
public UserAggregate GetUserInfo(string accountNumber) { var user = session.Query <User>().FirstOrDefault(x => x.AccountNumber == accountNumber); var ammout = session.Load <AccountUpdateEvent>($"{user.Id}/Events").Updates.Sum(x => x.Ammount); return(UserAggregate.Create(user, ammout)); }
public void UserAggregate_Delete_WillDelete() { // create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); databaseContext.Set <UserAggregate>().Add(user); databaseContext.SaveChanges(); } // delete using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = databaseContext.Set <UserAggregate>().First(); databaseContext.Set <UserAggregate>().Remove(user); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { databaseContext.Set <UserAggregate>().Count().Should().Be(0); } }
public void UserController_GetByUsername_ReturnUser() { using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user01 = UserAggregate.Create("jsmith", "*****@*****.**", "password hash", "security stamp"); var user02 = UserAggregate.Create("mjane", "*****@*****.**", "password hash", "security stamp"); databaseContext.Set <UserAggregate>().AddRange(new[] { user01, user02 }); databaseContext.SaveChanges(); } using (WebApp.Start <Startup>(url: iisAddress)) { HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/json")); var response = client.GetAsync(String.Format("{0}UserRead?username={1}", iisAddress, "jsmith")).Result; response.StatusCode.Should().Be(HttpStatusCode.OK); var result = response.Content.ReadAsStringAsync().Result; Debug.WriteLine(response.Content.ReadAsStringAsync().Result); var user = JsonConvert.DeserializeObject <UserMessage>(result); user.Username.Should() .Be("jsmith"); } }
public void UserAggregate_Create_ValidValues_IsValid() { var user = UserAggregate.Create( "Username", "Email", "PasswordHash", "SecurityStamp"); user.IsValid.Should().BeTrue(); }
public void UserAggregate_Created_EmptyValues_IsNotValid() { var user = UserAggregate.Create( string.Empty, string.Empty, string.Empty, string.Empty); user.IsValid.Should().BeFalse(); }
public async Task <Guid> Create(User item) { var user = UserAggregate.Create(item.Username, item.PasswordHash, item.Role); item.EnsureNotNull(nameof(item)); await _userAggregateRepo.Add(user); return(item.Id); }
public void CreateTest() { var builder = new UserAggregateBuilder(); var user = UserAggregate.Create( builder.userName, builder.passwordHash, builder.role); user.Should().As <UserAggregate>(); }
public UserAggregate GetUserInfoFromSpan(string accountNumber, TimeSpan span) { var user = session.Query <User>().FirstOrDefault(x => x.AccountNumber == accountNumber); var ammout = session.Load <AccountUpdateEvent>($"{user.Id}/Events") .Updates.Where(x => x.OccuredDate - DateTime.Now <= span) .Sum(x => x.Ammount); return(UserAggregate.Create(user, ammout)); }
public Task HandleAsync(CreateUser args) { try { var aggregate = UserAggregate.Create(args.AggregateId, args.FirstName, args.LastName, args.Email, args.Password); return(_repository.SaveAsync(aggregate)); } catch (Exception ex) { _logger.LogError(ex.Message, ex); while (ex.InnerException != null) { ex = ex.InnerException; _logger.LogError(ex.Message, ex); } throw; } }
public void UserAggregate_Valid_CanBeCreate() { // create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); databaseContext.Set <UserAggregate>().Add(user); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var expectedUser = databaseContext.Set <UserAggregate>().First(); expectedUser.Username.Should().Be("raffaeu"); } }
public void UserAggregate_AddLogin_WillPersist() { using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); user.AddLogin("providerName", "providerKey"); databaseContext.Set <UserAggregate>().Add(user); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var expectedUser = databaseContext.Set <UserAggregate>() .Include(x => x.Logins) .First(); expectedUser.Logins.Count.Should().Be(1); } }
public void RoleAggregate_AddUser_WillAdd() { using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var role = RoleAggregate.Create(Guid.NewGuid(), "RoleName"); var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); role.AddUserToRole(user); databaseContext.Set <RoleAggregate>().Add(role); databaseContext.SaveChanges(); } using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var role = databaseContext.Set <RoleAggregate>() .Include(x => x.Users) .Single(); role.Users.Count.Should().Be(1); } }
/// <summary> /// Insert a new user /// </summary> /// <param name="user"/> /// <returns/> public Task CreateAsync(CustomUser user) { // verify User does not exists var exists = databaseContext.Set <UserAggregate>() .Any(x => x.Username == user.UserName || x.Email == user.Email); if (exists) { throw new ApplicationException(String.Format("There is already a User with these Credentials.")); } // create User and Save var aggregateUser = UserAggregate.Create( id: new Guid(user.Id), username: user.UserName, email: user.Email, passwordHash: user.PasswordHash, securityStamp: user.SecurityStamp); databaseContext.Set <UserAggregate>().Add(aggregateUser); return(databaseContext.SaveChangesAsync()); }
public UserAggregate GetRandomUserAggregate() { var userAggregate = UserAggregate.Create(userName, passwordHash, role); return(userAggregate); }
public static UserAggregate User() { var user = UserAggregate.Create("jsmith", "*****@*****.**", "password hash", "security stamp"); return(user); }
public IAggregate Handle(CreateUser command) { return(UserAggregate.Create(command.Id, command.UserName, command.Email, command.FirstName, command.LastName, _dateTimeProvider.Now)); }