public void AddNewSimpleNotification() { DateTime datetime = DateTime.UtcNow; Notification notification = new Notification() { Id = Guid.NewGuid(), Message = "New Notification", Type = "Type", DateTime = datetime }; string userId = Guid.NewGuid().ToString(); this.notificationRepository.AddNotification(userId, notification); var status = this.notificationsContainer.Get(userId); Assert.IsNotNull(status); Assert.AreEqual(1, status.Notifications.Count); Assert.AreEqual(notification.Id, status.Notifications[0].Id); Assert.AreEqual(notification.Message, status.Notifications[0].Message); Assert.AreEqual(notification.Type, status.Notifications[0].Type); }
public void AddNotification(string userId, Notification notification) { var status = this.notificationsContainer.Get(userId); if (status == null) { status = new NotificationStatus(); status.Notifications = new List<Notification>(); } var toremove = status.Notifications.Where(n => notification.DateTime.Subtract(n.DateTime).TotalSeconds >= ConfigurationConstants.NotificationTimeInterval).ToList(); foreach (var item in toremove) { status.Notifications.Remove(item); } if (!status.Notifications.Any(n => n.SenderId == notification.SenderId)) { status.Notifications.Add(notification); } this.notificationsContainer.Save(userId, status); }
public void AddGlobalNotification(Notification notification) { throw new NotImplementedException(); }