public async Task CreateMultiAccountCommandHandler_WhenHandle_CreateMultiAccountForTheUser() { _sut = new CreateMultiAccountCommandHandler(_context, _userAccountDataRepository, _userMultiAccountRepository, _matrixPositionRepository, _userMultiAccountHelper, _matrixPositionHelper); await CreateUserAndMultiAccountAndMatrixPositionsInDatabase(); var command = new CreateMultiAccountCommand { UserAccountId = Guid.Parse("042d748c-9cef-4a5a-92bd-3fd9a4a0e499"), SponsorReflink = "otherUserReflink12345" }; var result = await _sut.Handle(command); var multiAccounts = _context.UserMultiAccounts.Where(x => x.UserAccountDataId == Guid.Parse("042d748c-9cef-4a5a-92bd-3fd9a4a0e499")).ToList(); result.Should().NotBe(Guid.Empty); multiAccounts.Count.Should().Be(2); var multiAccount = await _context.UserMultiAccounts.Include(x => x.Sponsor).SingleOrDefaultAsync(x => x.Id == result); multiAccount.Sponsor.RefLink.Should().Be(command.SponsorReflink); }
void GivenSystemUnderTest() { _sut = new CreateMultiAccountCommandHandler(_context, _userAccountDataRepository, _userMultiAccountRepository, _matrixPositionRepository, _userMultiAccountHelper, _matrixPositionHelper); }