public async Task TestA() { var mocker = new MockDataV2(); mocker.Reset(); var serviceProvider = new ServiceCollection() .AddTransient <ICollectionRepo, CollectionRepo>() .AddDbContext <AppDbContext>(options => options.UseSqlServer(MockDatabaseFactory.DbMockConnectionString)) .AddMediatR(typeof(MediatREntryPoint).Assembly) .BuildServiceProvider(); var service = serviceProvider.GetService <IMediator>(); var request = new DeleteCollectionC(Guid.Parse("d30c8f79-291b-4532-8f22-b693e61d6bb5"), "9a4e1d79-d64e-4ec4-85e5-53bdef5043f4"); var actionResponse = await service.Send(request); Assert.True(actionResponse.IsSucceed); using (var db = MockDatabaseFactory.Build()) { Assert.Equal(5, await db.Collections.CountAsync()); } }
public async Task TestB_UserNotOwnCollection() { var mocker = new MockDataV2(); mocker.Reset(); var serviceProvider = new ServiceCollection() .AddTransient <ICollectionRepo, CollectionRepo>() .AddDbContext <AppDbContext>(options => options.UseSqlServer(MockDatabaseFactory.DbMockConnectionString)) .AddMediatR(typeof(MediatREntryPoint).Assembly) .BuildServiceProvider(); var service = serviceProvider.GetService <IMediator>(); var request = new DeleteCollectionC(Guid.Parse("82c3a0d1-a73c-41e2-a8f3-ef525e5f0ffa"), "9a4e1d79-d64e-4ec4-85e5-53bdef5043f4"); var actionResponse = await service.Send(request); Assert.False(actionResponse.IsSucceed); using (var db = MockDatabaseFactory.Build()) { Assert.Equal(6, await db.Collections.CountAsync()); } }
public async Task <IActionResult> Delete(Guid collectionId) { var userId = User.FindFirst(ClaimTypes.NameIdentifier)?.Value; if (String.IsNullOrEmpty(userId)) { return(NotFound()); } var command = new DeleteCollectionC(collectionId, userId); var actionResult = await _mediator.Send(command); if (actionResult.IsSucceed == true) { return(Ok()); } return(BadRequest(actionResult.Message)); }