/// <summary> /// This method gets all the queue items in a specific helpdesk /// </summary> /// <param name="id">The id of the helpdesk</param> /// <returns>Response which indicates success or failure</returns> public GetQueueItemsByHelpdeskIDResponse GetQueueItemsByHelpdeskID(int id) { s_logger.Info("Getting queue items by helpdesk id..."); GetQueueItemsByHelpdeskIDResponse response = new GetQueueItemsByHelpdeskIDResponse(); try { var dataLayer = new QueueDataLayer(); List <QueueItemDTO> queueItems = dataLayer.GetQueueItemsByHelpdeskID(id); if (queueItems.Count == 0) { throw new NotFoundException("No queue items found under helpdesk " + id); } response.QueueItems = queueItems; response.Status = HttpStatusCode.OK; } catch (NotFoundException ex) { s_logger.Error(ex, "No queue items found!"); response.Status = HttpStatusCode.NotFound; response.StatusMessages.Add(new StatusMessage(HttpStatusCode.NotFound, "No queue items found!")); } catch (Exception ex) { s_logger.Error(ex, "Unable to get queue items!"); response.Status = HttpStatusCode.InternalServerError; response.StatusMessages.Add(new StatusMessage(HttpStatusCode.InternalServerError, "Unable to get queue items!")); } return(response); }
public void GetQueueItemsByHelpdeskIDNoHelpdesk() { QueueFacade facade = new QueueFacade(); GetQueueItemsByHelpdeskIDResponse testResponse = facade.GetQueueItemsByHelpdeskID(-1); Assert.AreEqual(HttpStatusCode.NotFound, testResponse.Status); }
public void GetQueueItemsByHelpdeskIDNoItems() { Helpdesksettings helpdesk = new Helpdesksettings() { HasQueue = true, HasCheckIn = false, IsDeleted = false, Name = AlphaNumericStringGenerator.GetString(10), }; using (helpdesksystemContext context = new helpdesksystemContext()) { context.Helpdesksettings.Add(helpdesk); context.SaveChanges(); } QueueFacade facade = new QueueFacade(); GetQueueItemsByHelpdeskIDResponse testResponse = facade.GetQueueItemsByHelpdeskID(helpdesk.HelpdeskId); Assert.AreEqual(HttpStatusCode.NotFound, testResponse.Status); }
public void GetQueueItemsByHelpdeskID() { Helpdesksettings helpdesk = new Helpdesksettings() { HasQueue = true, HasCheckIn = false, IsDeleted = false, Name = AlphaNumericStringGenerator.GetString(10), }; Unit unit = new Unit() { Code = AlphaNumericStringGenerator.GetString(8), IsDeleted = false, Name = AlphaNumericStringGenerator.GetString(10), }; Topic topic = new Topic() { IsDeleted = false, Name = AlphaNumericStringGenerator.GetString(10), }; using (helpdesksystemContext context = new helpdesksystemContext()) { context.Helpdesksettings.Add(helpdesk); context.Unit.Add(unit); context.SaveChanges(); Helpdeskunit helpdeskunit = new Helpdeskunit() { HelpdeskId = helpdesk.HelpdeskId, UnitId = unit.UnitId }; context.Helpdeskunit.Add(helpdeskunit); context.SaveChanges(); topic.UnitId = unit.UnitId; context.Topic.Add(topic); context.SaveChanges(); } AddToQueueRequest request = new AddToQueueRequest() { Nickname = AlphaNumericStringGenerator.GetString(10), SID = AlphaNumericStringGenerator.GetStudentIDString(), TopicID = topic.TopicId, Description = "GetQueueItemsByHelpdeskID Test" }; QueueFacade facade = new QueueFacade(); AddToQueueResponse response = facade.AddToQueue(request); Assert.AreEqual(HttpStatusCode.OK, response.Status); GetQueueItemsByHelpdeskIDResponse testResponse = facade.GetQueueItemsByHelpdeskID(helpdesk.HelpdeskId); Assert.AreEqual(HttpStatusCode.OK, testResponse.Status); var itemIds = testResponse.QueueItems.Select(i => i.ItemId).ToList(); Assert.IsTrue(itemIds.Contains(response.ItemId)); }