public async Task TestC() { var mock = new MockDataV3(); mock.Reset(); var serviceProvider = new ServiceCollection() .AddTransient <IFlashcardProgressRepo, FlashcardProgressRepo>() .AddTransient <IStatsUserRepo, StatsUserRepo>() .AddDbContext <AppDbContext>(options => options.UseSqlServer(MockDatabaseFactory.DbMockConnectionString)) .AddMediatR(typeof(MediatREntryPoint).Assembly) .BuildServiceProvider(); var mediator = serviceProvider.GetService <IMediator>(); var updateFlashcardProgressC = new UpdateFlashcardProgressC(Guid.Parse("9884d783-427d-45d4-a1df-facaf81729f5"), FlashcardProgress.Know, "9a4e1d79-d64e-4ec4-85e5-53bdef5043f4"); var actionResponse = await mediator.Send(updateFlashcardProgressC); using (var db = MockDatabaseFactory.Build()) { var flashcardProgressModel = await db.FlashcardProgresses.FirstOrDefaultAsync(e => e.Id == Guid.Parse("9884d783-427d-45d4-a1df-facaf81729f5")); Assert.Equal(1, flashcardProgressModel.CorrectInRow); Assert.Equal(DateTime.Now.Date.AddDays(1), flashcardProgressModel.PracticeDate); } }
public async Task <IActionResult> UpdateFlashcardProgress(Guid flashcardProgressId, FlashcardProgress flashcardProgress) { var userId = User.FindFirst(ClaimTypes.NameIdentifier)?.Value; if (String.IsNullOrEmpty(userId)) { return(NotFound()); } var updateFlashcardProgressC = new UpdateFlashcardProgressC(flashcardProgressId, flashcardProgress, userId); var actionResult = await _mediator.Send(updateFlashcardProgressC); if (actionResult.IsSucceed) { return(Ok()); } return(BadRequest()); }