public async Task Delete_Throw_Exception_If_Request_Null( Delete.Request request, CancellationToken cancellationToken, int userId, int adId) { ConfigureMoqEnvironment(userId.ToString(), adId); // Assert await Assert.ThrowsAsync <NullReferenceException>(async() => await advertisementService.Delete(request, cancellationToken)); _identityServiceMock.Verify(); }
public async Task Throws_Delete_Exception_If_Sender_Is_Not_Meal_Owner() { _fixture.StartScope(); // Arrange-TestAccount(RegularUser) var testAccount = (TestAccountProvider)_fixture.GetService <ICurrentAccountProvider>(); testAccount.Role = Role.RegularUser; { // Arrange-Account var request = new Api.Features.Account.Create.Request { Email = _fixture.GetEmail(), Password = Guid.NewGuid().ToString() }; await _fixture.SendAsync(request); testAccount.Id = (await _fixture.ExecuteDbContextAsync(db => db.Accounts.SingleOrDefaultAsync(x => x.Email == request.Email))).Id; } // This is created by another Account var createRequest = new Create.Request { Date = DateTime.UtcNow.Date, Time = "11:11", Text = "string", Calories = 3 }; var createResponse = await _fixture.SendAsync(createRequest); { // Arrange-Account(Change the Account) var request = new Api.Features.Account.Create.Request { Email = _fixture.GetEmail(), Password = Guid.NewGuid().ToString() }; await _fixture.SendAsync(request); testAccount.Id = (await _fixture.ExecuteDbContextAsync(db => db.Accounts.SingleOrDefaultAsync(x => x.Email == request.Email))).Id; } { // Arrange var request = new Delete.Request { Id = createResponse.Id }; // Act & Assert await Assert.ThrowsAsync <RestException>(() => _fixture.SendAsync(request)); } }
public async Task Should_Delete_Meal() { _fixture.StartScope(); // Arrange-TestAccount var testAccount = (TestAccountProvider)_fixture.GetService <ICurrentAccountProvider>(); { // Arrange-Account var request = new Api.Features.Account.Create.Request { Email = _fixture.GetEmail(), Password = Guid.NewGuid().ToString() }; await _fixture.SendAsync(request); testAccount.Id = (await _fixture.ExecuteDbContextAsync(db => db.Accounts.SingleOrDefaultAsync(x => x.Email == request.Email))).Id; } Guid id; { // Arrange-Meal-To-Delete var request = new Create.Request { Date = DateTime.UtcNow.Date, Time = "11:11", Text = "string", Calories = 3 }; var response = await _fixture.SendAsync(request); id = response.Id; } { // Arrange var request = new Delete.Request { Id = id }; // Act await _fixture.SendAsync(request); var count = await _fixture.CountAsync <Meal>(); // Assert Assert.Equal(0, count); } }
public async Task <IActionResult> Delete(Delete.Request request) { var account = await session .Query <Account>() .Where(p => p.Deleted != true) .Where(p => p.Id == request.Id) .FirstOrDefaultAsync() .ConfigureAwait(false); if (account == null) { return(NotFound()); } session.Events.Append(request.Id, new AccountDeleted(request.CorrelationId)); await session.SaveChangesAsync(new CancellationToken()); return(NoContent()); }
public async Task Throws_Delete_Exception_For_Invalid_Identifier() { _fixture.StartScope(); // Arrange-TestAccount var testAccount = (TestAccountProvider)_fixture.GetService <ICurrentAccountProvider>(); { // Arrange-Account var request = new Api.Features.Account.Create.Request { Email = _fixture.GetEmail(), Password = Guid.NewGuid().ToString() }; await _fixture.SendAsync(request); testAccount.Id = (await _fixture.ExecuteDbContextAsync(db => db.Accounts.SingleOrDefaultAsync(x => x.Email == request.Email))).Id; } { // Arrange-Meal-To-Delete var request = new Create.Request { Date = DateTime.UtcNow.Date, Time = "11:11", Text = "string", Calories = 3 }; await _fixture.SendAsync(request); } { // Arrange var request = new Delete.Request { Id = Guid.NewGuid() }; // Act & Assert await Assert.ThrowsAsync <RestException>(() => _fixture.SendAsync(request)); } }
public async Task Delete(Delete.Request request, CancellationToken cancellationToken) { var ad = await _repository.FindByIdWithUserInclude(request.Id, cancellationToken); if (ad == null) { throw new AdNotFoundException(request.Id); } var user = await _userService.GetCurrent(cancellationToken); if (ad.Owner.Id != user.Id) { throw new NoRightsException("Нет прав для выполнения операции."); } ad.Status = Domain.Ad.Statuses.Closed; ad.UpdatedAt = DateTime.UtcNow; await _repository.Save(ad, cancellationToken); }
public async Task <IActionResult> Delete([FromBody] Delete.Request req) { var rec = await Common1DB.OpsNotices .Where(r => r.Id == req.id) .FirstOrDefaultAsync(); if (rec == null) { return(BadRequest()); } Common1DB.OpsNotices.Remove(rec); await Common1DB.SaveChangesAsync(); return(Ok(new Delete.Response { deletedId = req.id, })); }
public async Task Should_Delete_Account_With_Valid_Email() { _fixture.StartScope(); string email; { // Arrange-Account-To-Delete var request = new Create.Request { Email = _fixture.GetEmail(), Password = Guid.NewGuid().ToString() }; await _fixture.SendAsync(request); email = request.Email; } { // Arrange var request = new Delete.Request { Email = email }; // Act await _fixture.SendAsync(request); var account = await _fixture.ExecuteDbContextAsync(db => db.Accounts.SingleOrDefaultAsync(x => x.Email == email)); var count = await _fixture.ExecuteDbContextAsync(db => db.Accounts.CountAsync()); // Assert Assert.Null(account); // There should be only Admin account Assert.Equal(1, count); } }
public async Task Throws_Delete_Exception_For_Invalid_Email() { _fixture.StartScope(); { // Arrange-Account-To-Delete var request = new Create.Request { Email = _fixture.GetEmail(), Password = Guid.NewGuid().ToString() }; await _fixture.SendAsync(request); } { // Arrange var request = new Delete.Request { Email = _fixture.GetEmail() }; // Act & Assert await Assert.ThrowsAsync <RestException>(() => _fixture.SendAsync(request)); } }