public async void 削除先のFilePathがnullの場合削除しない() { // Arrange var id = 100000; var announcement = new Announcement( new AnnouncementTitle("大会のお知らせ1"), "<h3>○○大会のおしらせ</h3>", AnnouncementGenre.News, new RegisteredDate(new DateTime(2020, 4, 1)), new EndDate(new DateTime(2020, 4, 30)), null ); var mockRepository = new Mock <IAnnouncementRepository>(); mockRepository.Setup(r => r.FindById(id)) .ReturnsAsync(announcement) .Verifiable(); var mockFileAccessor = new Mock <IFileAccessor>(); var usecase = new AnnouncementUseCase(mockRepository.Object, mockFileAccessor.Object); // Act await usecase.DeleteAttachedFile(id); // Assert mockRepository.Verify(); mockRepository.VerifyNoOtherCalls(); }
public async void Fileの削除を行いお知らせを更新() { // Arrange var id = 100000; var announcement = new Announcement( new AnnouncementTitle("大会のお知らせ1"), "<h3>○○大会のおしらせ</h3>", AnnouncementGenre.News, new RegisteredDate(new DateTime(2020, 4, 1)), new EndDate(new DateTime(2020, 4, 30)), new AttachedFilePath("/attached/filePath") ); var mockRepository = new Mock <IAnnouncementRepository>(); mockRepository.Setup(r => r.FindById(id)) .ReturnsAsync(announcement) .Verifiable(); var mockFileAccessor = new Mock <IFileAccessor>(); var usecase = new AnnouncementUseCase(mockRepository.Object, mockFileAccessor.Object); // Act await usecase.DeleteAttachedFile(id); // Assert mockRepository.Verify(); mockRepository.Verify(u => u.Update(It.IsAny <Announcement>()), Times.Once()); mockFileAccessor.Verify(u => u.DeleteAsync(It.IsAny <string>()), Times.Once()); }