public async Task GetNotificationTest() { var id = Guid.NewGuid(); var record = new NotificationRecord { OwnerUserId = Guid.NewGuid().ToString(), Id = id, Parameters = new Dictionary <string, object> { { "testKey", "testValue" } }, Created = DateTimeOffset.UtcNow, Event = NotificationEvent.ArticleCreated }; var store = new Mock <INotificationHistoryDataStore>(); store.Setup(x => x.FindAsync(It.Is <Guid>(guid => guid == id))) .ReturnsAsync(record); var service = new NotificationHistoryService(store.Object, DefaultMapper); var result = await service.GetAsync(new GetNotificationRequest(record.OwnerUserId, id)); ValidateRecords(record, result); }
public async Task GetNotificationValidationFailedTest() { var store = new Mock <INotificationHistoryDataStore>(); var service = new NotificationHistoryService(store.Object, DefaultMapper); await Assert.ThrowsAsync <ArgumentNullException>(() => service.GetAsync(null)); store.Verify(x => x.FindAsync(It.IsAny <Guid>()), Times.Never); }
public async Task GetMissingNotificationFailedTest() { var store = new Mock <INotificationHistoryDataStore>(); store.Setup(x => x.FindAsync(It.IsAny <Guid>())) .ReturnsAsync((NotificationRecord)null); var id = Guid.NewGuid(); var service = new NotificationHistoryService(store.Object, DefaultMapper); await Assert.ThrowsAsync <NotFoundException>(() => service.GetAsync(new GetNotificationRequest(Guid.NewGuid().ToString(), id))); store.Verify(x => x.FindAsync(id), Times.Once); }
public async Task GetInvalidOwnerNotificationFailedTest() { var id = Guid.NewGuid(); var record = new NotificationRecord { OwnerUserId = Guid.NewGuid().ToString(), Id = id }; var store = new Mock <INotificationHistoryDataStore>(); store.Setup(x => x.FindAsync(It.Is <Guid>(guid => guid == id))) .ReturnsAsync(record); var service = new NotificationHistoryService(store.Object, DefaultMapper); await Assert.ThrowsAsync <NotFoundException>(() => service.GetAsync(new GetNotificationRequest(Guid.NewGuid().ToString(), id))); store.Verify(x => x.FindAsync(id), Times.Once); }