public void ShouldGetAllMessagesSentByAUser() { // Arrange Data ---- AllMessageRequest Request = new AllMessageRequest(); Request.From = "userVIP"; var listOfMessages = new List <AspNetUserMessage>(); listOfMessages.Add(new AspNetUserMessage { From = Request.From, To = "User1", Text = "DummyTxt" }); listOfMessages.Add(new AspNetUserMessage { From = "User2", To = Request.From, Text = "txt2" }); var newContext = new TestStoreAppContext(); foreach (AspNetUserMessage msg in listOfMessages) { newContext.AspNetUserMessages.Add(msg); } // Setup database mocker var controller = new MessageController(newContext); // Act --- List <AspNetUserMessage> response = controller.GetAllMessages(Request).AsEnumerable().ToList(); // Assert --- Assert.True(response.SequenceEqual(listOfMessages)); }
/// <summary> /// Gets a list of Notification messages for a job seeker. /// </summary> /// <param name="jobseekerID">Requested Jobseeker ID.</param> /// <returns>A collection of <see cref="NotificationModel" /> for the jobseeker.</returns> public IEnumerable <NotificationModel> GetList(long jobseekerID) { var cacheKey = new KeyModel(CacheType.Global, "NotificationList").Add(jobseekerID.ToString()); IEnumerable <NotificationModel> cacheValue = null; if (CacheService.TryGet(cacheKey, out cacheValue)) { return(cacheValue); } var request = new AllMessageRequest { JobseekerId = jobseekerID }; ValidateRequest(request); try { var service = Client.Create <IDiaryNotification>("DiaryNotification.svc"); var response = service.JobseekerGetAllMessages(request); ValidateResponse(response); var model = new List <NotificationModel>(); if (response.SqlLists != null && response.SqlLists.Length > 0) { var sqlModel = response.SqlLists.ToNotificationModelList();// MappingEngine.Map<IEnumerable<NotificationModel>>(response.SqlLists); model.AddRange(sqlModel); } if (response.MFLists != null && response.MFLists.Length > 0) { var mfModel = response.MFLists.ToNotificationModelList();//MappingEngine.Map<IEnumerable<NotificationModel>>(response.MFLists); model.AddRange(mfModel); } // TODO sort ? var i = 0; foreach (var item in model) { item.ListItemID = i; i++; item.JobseekerID = jobseekerID; } CacheService.Set(cacheKey, model); return(model); } catch (FaultException <ValidationFault> vf) { throw vf.ToServiceValidationException(); } catch (FaultException fe) { throw fe.ToServiceValidationException(); } }