public async Task MeetingControllerDelete() { var data = new MeetingApiDataHandler(); var model = MeetingData.GetFirst(); data.Result.Setup(m => m.Execute(It.IsAny <Loader <Meeting> >())).Returns(model); data.Result.Setup(m => m.Execute(It.IsAny <Persist <Meeting> >())).Returns(model); var controller = new MeetingController(data, Logic) { CurrentUser = StandardUser }; var result = await controller.Delete(MeetingData.FirstId) as OkObjectResult; result.Should().NotBeNull(); result.Should().BeOfType <OkObjectResult>(); var viewModel = result.Value as ConfirmViewModel; viewModel.Success.Should().BeTrue(); data.HasExecuted.Should().BeTrue(); data.HasCommitted.Should().BeTrue(); data.Result.Verify(s => s.Execute(It.IsAny <Loader <Meeting> >()), Times.Once()); data.Result.Verify(s => s.Execute(It.IsAny <Persist <Meeting> >()), Times.Once()); }
public async Task MeetingControllerRecurUnauthorised() { var data = new MeetingApiDataHandler(); var logic = new InteractApiLogicHandler(); var viewModel = new RecurViewModel() { MeetingId = MeetingData.FirstId, When = DateHelper.FormatDayStart(DateTime.UtcNow) }; data.Result.Setup(m => m.Execute(It.IsAny <Loader <Meeting> >())).Returns(MeetingData.GetFirst()); var controller = new MeetingController(data, logic) { CurrentUser = NonTenantUser }; var result = await controller.Recur(viewModel) as UnauthorizedResult; result.Should().NotBeNull(); result.Should().BeOfType <UnauthorizedResult>(); data.HasExecuted.Should().BeTrue(); data.HasCommitted.Should().BeFalse(); data.Result.Verify(s => s.Execute(It.IsAny <Loader <Meeting> >()), Times.Once); data.Result.Verify(s => s.Execute(It.IsAny <Persist <Meeting> >()), Times.Never()); }
public async Task MeetingControllerGetAdmin() { var data = new MeetingApiDataHandler(); var model = MeetingData.GetFirst(); data.Result.Setup(m => m.Execute(It.IsAny <Loader <Meeting> >())).Returns(model); var controller = new MeetingController(data, Logic) { CurrentUser = AdminUser }; var result = await controller.Get(MeetingData.FirstId) as OkObjectResult; result.Should().NotBeNull(); result.Should().BeOfType <OkObjectResult>(); var viewModel = result.Value as MeetingViewModel; viewModel.Id.Should().Be(model.Id); viewModel.Name.Should().Be(model.Name); viewModel.Text.Should().Be(model.Text); data.HasExecuted.Should().BeTrue(); data.Result.Verify(s => s.Execute(It.IsAny <Loader <Meeting> >()), Times.Once()); }
public async Task MeetingControllerRecurAttendFail() { var data = new MeetingApiDataHandler(); var logic = new InteractApiLogicHandler(); var viewModel = new RecurViewModel() { MeetingId = MeetingData.FirstId, When = DateHelper.FormatDayStart(DateTime.UtcNow) }; data.Result.Setup(m => m.Execute(It.IsAny <Loader <Meeting> >())).Returns(MeetingData.GetFirst()); data.Result.Setup(m => m.Execute(It.IsAny <Persist <Meeting> >())).Returns(MeetingData.GetSecond()); logic.Result.Setup(m => m.Execute(It.IsAny <AttendCheck>())).Returns(false); var controller = new MeetingController(data, logic) { CurrentUser = StandardUser }; var result = await controller.Recur(viewModel) as OkObjectResult; result.Should().NotBeNull(); result.Should().BeOfType <OkObjectResult>(); result.Value.Should().NotBeNull(); var check = result.Value as ConfirmViewModel; check.Success.Should().BeFalse(); data.HasExecuted.Should().BeTrue(); data.HasCommitted.Should().BeFalse(); data.Result.Verify(s => s.Execute(It.IsAny <Loader <Meeting> >()), Times.Once); data.Result.Verify(s => s.Execute(It.IsAny <Persist <Meeting> >()), Times.Never()); }
/// <summary> /// Check the DiScribe bot email inbox for Webex invite emails created by scheduling /// from Webex.com or from DiScribe web. /// </summary> /// <param name="appConfig"></param> /// <returns></returns> private static async Task <object?> CheckForEmails(IConfigurationRoot appConfig) { MeetingInfo meetingInfo = null; try { var email = await EmailListener.GetEmailAsync(); meetingInfo = MeetingController.HandleEmail(email.Body.Content.ToString(), email.Subject, "", appConfig); await EmailListener.DeleteEmailAsync(email); } catch (Exception emailEx) { Console.Error.WriteLine($">\tCould not read bot invite email. Reason: {emailEx.Message}"); return(null); } if (meetingInfo != null) { Console.WriteLine($">\tNew Meeting Found at: {meetingInfo.StartTime.ToLocalTime()}"); /*Send an audio registration email enabling all unregistered users to enroll on DiScribe website */ MeetingController.SendEmailsToAnyUnregisteredUsers(meetingInfo.AttendeesEmails, appConfig["DB_CONN_STR"]); Console.WriteLine($">\tScheduling dialer to dial in to meeting at {meetingInfo.StartTime}"); //Kay: According to Oloff, this should not have an "await" in front, otherwise it will wait until the meeting finish before checking the inbox again. SchedulerController.Schedule(Run, meetingInfo, appConfig, meetingInfo.StartTime);//Schedule dialer-transcriber workflow as separate task } return(meetingInfo); }
public void IndexWithParametersNotLoggedUserTest() { ModelsMocks.CleanUpBeforeTest(); // Arrange MeetingController controller = ControllersMocks.GetControllerAsNotLoggedUser <MeetingController>(); // Act JsonResult action = controller.Index(ModelsMocks.ProjectModelFirst.ID, ModelsMocks.TaskModelFirst.ID) as JsonResult; var forbidden = (TaskVlopper.Models.JsonHttpViewModel)action.Data; // Assert Assert.AreEqual(403, forbidden.HttpCode); // Act action = controller.Index(ModelsMocks.ProjectModelFirst.ID) as JsonResult; forbidden = (TaskVlopper.Models.JsonHttpViewModel)action.Data; // Assert Assert.AreEqual(403, forbidden.HttpCode); // Act action = controller.Index() as JsonResult; forbidden = (TaskVlopper.Models.JsonHttpViewModel)action.Data; // Assert Assert.AreEqual(403, forbidden.HttpCode); }
public async void AddParticipant_FailsWhenMeetingNotFound() { const int idMeeting = 1; const int idParticipant = 1; _context.Meetings.Add( new Meeting { Id = 2, Name = "meeting", StartDateTimeMeeting = new DateTime(2020, 06, 12, 21, 30, 00), EndDateTimeMeeting = new DateTime(2020, 06, 12, 23, 30, 00) } ); _context.Participants.Add( new Participant { Id = idParticipant, Name = "Sasha", Email = "*****@*****.**" } ); _context.SaveChanges(); var controller = new MeetingController(_context, _emailServiceMock.Object); var result = await controller.AddParticipant(idMeeting, idParticipant); Assert.Empty(_context.MeetingParticipants); Assert.NotNull(result); Assert.IsType <NotFoundResult>(result); }
public void IndexWithParametersLoggedUserTest() { ModelsMocks.CleanUpBeforeTest(); ModelsMocks.AddTestProject(true); ModelsMocks.AddTestTask(true, ModelsMocks.ProjectModelFirst); ModelsMocks.AddTestMeeting(true, ModelsMocks.MeetingModelFirst, ModelsMocks.TaskModelFirst); // Arrange MeetingController controller = ControllersMocks.GetControllerAsLoggedUser <MeetingController>(); // Act JsonResult action = controller.Index(ModelsMocks.ProjectModelFirst.ID, ModelsMocks.TaskModelFirst.ID) as JsonResult; var data = (Models.MeetingsViewModel)action.Data; // Assert Assert.AreEqual(1, data.Meeting.Count()); // Act action = controller.Index(ModelsMocks.ProjectModelFirst.ID) as JsonResult; data = (Models.MeetingsViewModel)action.Data; // Assert Assert.AreEqual(1, data.Meeting.Count()); // Act action = controller.Index() as JsonResult; data = (Models.MeetingsViewModel)action.Data; // Assert Assert.AreEqual(1, data.Meeting.Count()); }
public async Task AuthenticateOk() { IConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.AddJsonFile("appSettings.json"); IConfiguration configuration = configurationBuilder.Build(); var repository = new MeetingRepository(configuration); var weatherService = new WeatherService(); IOptions <PaginationOptions> options = Options.Create(new PaginationOptions()); var meetingController = new MeetingController( new MeetingService(repository, weatherService, options)); var user = new UserLoginDto { Username = "******", Password = "******" }; var userRepo = new UserRepository(configuration); var userService = new UserService(userRepo, options); var authController = new AuthenticationController(configuration, userService); var token = await authController.Authenticate(user); Assert.AreEqual(token.GetType(), typeof(OkObjectResult)); await Task.CompletedTask; }
// Construtor utilizador para novas reunioes public MeetingView(int idUser) { InitializeComponent(); // Nova meeting this.newMeeting = true; this.idUser = idUser; // Instancia a classe controller this.controller = new MeetingController(); // Carrega lista de utilizadores loadUsersList(); // Definir o campo de data/hora com o formato dia/mes/ano hora:minuto this.dateTimePickerStart.Format = DateTimePickerFormat.Custom; this.dateTimePickerStart.CustomFormat = "dd/MM/yyyy hh:mm"; // Load duration options loadDuration(); // Carregar categorias para a linkedlist e combobox loadTypesList(); // Carrega grid com os utilizadores loadUsers(); }
public void EditPostLoggedUserTest() { ModelsMocks.CleanUpBeforeTest(); ModelsMocks.AddTestProject(true); ModelsMocks.AddTestTask(true, ModelsMocks.ProjectModelFirst); ModelsMocks.AddTestMeeting(true, ModelsMocks.MeetingModelFirst, ModelsMocks.TaskModelFirst); // Arrange MeetingController controller = ControllersMocks.GetControllerAsLoggedUser <MeetingController>(); // Act JsonResult action = controller.Edit(ModelsMocks.MeetingModelSecond, ModelsMocks.ProjectModelFirst.ID, ModelsMocks.TaskModelFirst.ID, ModelsMocks.MeetingModelFirst.ID) as JsonResult; using (IUnityContainer container = UnityConfig.GetConfiguredContainer()) { var repo = container.Resolve <IMeetingRepository>(); var meeting = repo.GetMeetingByIdWithoutTracking(ModelsMocks.MeetingModelFirst.ID); if (meeting.Description != "1") { Assert.Fail(); } if (meeting.Title != "2") { Assert.Fail(); } Assert.IsNotNull(meeting); } }
public async void DeleteMeeting_Success() { const int idMeeting = 1; _context.Meetings.Add( new Meeting { Id = idMeeting, Name = "meeting", StartDateTimeMeeting = new DateTime(2020, 06, 12, 21, 30, 00), EndDateTimeMeeting = new DateTime(2020, 06, 12, 23, 30, 00) } ); _context.SaveChanges(); var controller = new MeetingController(_context, _emailServiceMock.Object); var result = await controller.Delete(idMeeting); Assert.Empty(_context.Meetings); Assert.NotNull(result); Assert.IsType <OkResult>(result); }
public HttpResponseMessage Calendar(string id) { string output = "BEGIN:VCALENDAR" + Environment.NewLine;; output += "METHOD:PUBLISH" + Environment.NewLine; output += "VERSION:2.0" + Environment.NewLine; output += "PRODID:-//Forsyth County Georgia - Meetings//EN" + Environment.NewLine; Meeting m = new MeetingController().GetMeetingByID(Convert.ToInt32(id)); if (string.IsNullOrEmpty(m.Flag)) { string stamp = string.Format("{0}{1}{2}T{3}Z", m.RecordCreated.ToUniversalTime().ToString("yyyy"), m.RecordCreated.ToUniversalTime().ToString("MM"), m.RecordCreated.ToUniversalTime().ToString("dd"), m.RecordCreated.ToUniversalTime().ToString("HHmmss")); string stD = string.Format("{0}{1}{2}T{3}Z", m.Begining.ToUniversalTime().ToString("yyyy"), m.Begining.ToUniversalTime().ToString("MM"), m.Begining.ToUniversalTime().ToString("dd"), m.Begining.ToUniversalTime().ToString("HHmmss")); output += "BEGIN:VEVENT" + Environment.NewLine; output += "ORGANIZER:[email protected]" + Environment.NewLine; output += "DTSTAMP:" + stamp + Environment.NewLine; output += "ORGANIZER:ForsythCounty:MAILTO:[email protected]" + Environment.NewLine; output += "DTSTART:" + stD + Environment.NewLine; output += "UID:meeting" + m.MeetingID + "@forsythco.com" + Environment.NewLine; output += "DURATION:PT1H0M0S" + Environment.NewLine; output += "LOCATION:" + String.Format("{0} {1}", m.Location.AddressOne, m.Location.AddressTwo) + Environment.NewLine; output += "SUMMARY:" + m.FormattedDescription + Environment.NewLine; output += "END:VEVENT" + Environment.NewLine; } output += "END:VCALENDAR" + Environment.NewLine; output += "" + Environment.NewLine; return(new HttpResponseMessage() { // Content = new StringContent(output, System.Text.Encoding.UTF8, "text/calendar") }); }
public async Task MeetingControllerFilter() { var data = new MeetingApiDataHandler(); var list = new List <MeetingDisplay> { MeetingData.GetFirstDisplay(false) }; var filter = new MeetingFilter { TenantRestrict = true }; data.Result.Setup(m => m.Execute(It.IsAny <MeetingDisplayByFilter>())).Returns(list); var controller = new MeetingController(data, Logic) { CurrentUser = StandardUser }; var result = await controller.Filter(filter) as OkObjectResult; result.Should().NotBeNull(); result.Should().BeOfType <OkObjectResult>(); result.Value.Should().NotBeNull(); var check = result.Value as PagedResult <IEnumerable <MeetingDisplay> >; check.Should().NotBeNull(); check.Data.Count().Should().Be(list.Count); Assert.That(check.Data, Is.DeepEqualTo(list)); data.HasExecuted.Should().BeTrue(); data.Result.Verify(s => s.Execute(It.IsAny <MeetingDisplayByFilter>()), Times.Once()); }
// Este contrutor é utilizado quando queremos carregar o form com uma reuniao ja existente public MeetingView(int idUser, Meeting meeting, List <UserTask> tasks, List <MeetingInvite> guestList) { InitializeComponent(); // Reuniao existente this.newMeeting = false; this.meeting = meeting; this.idUser = idUser; this.buttonExportPdf.Visible = true; this.buttonDelete.Visible = true; this.buttonAttendeeList.Visible = true; this.buttonSendMinutes.Visible = true; this.buttonUploadAttendeeList.Visible = true; // Instancia a classe controller this.controller = new MeetingController(); // Carrega lista de utilizadores loadUsersList(); // Activa o botao de iniciar a reuniao this.groupBoxRecord.Visible = true; // Definir o campo de data/hora com o formato dia/mes/ano hora:minuto this.dateTimePickerStart.Format = DateTimePickerFormat.Custom; this.dateTimePickerStart.CustomFormat = "dd/MM/yyyy HH:mm"; // Load duration options loadDuration(); // Carregar categorias para a linkedlist e combobox loadTypesList(); // Adiciona a coluna custom de data na grid CalendarColumn col = new CalendarColumn(); int colno = this.dataGridViewTasks.Columns.Add(col); this.dataGridViewTasks.Columns[colno].HeaderText = "Deadline"; // Carrega valores da meeting this.guestList = guestList; this.dateTimePickerStart.Value = this.meeting.startTime; this.textBoxSubject.Text = this.meeting.subject; this.textBoxAgenda.Text = this.meeting.agendaDescription; this.textBoxMeetingminutes.Text = this.meeting.meetingMinutes; this.textBoxTranscription.Text = this.meeting.audioTranscription; selectDuration(this.meeting.durationMinutes); selectType(this.meeting.idType); loadTasks(tasks); // Carrega lista de tarefas this.panelEditMeeting.Visible = true; // Carrega audio da reuniao loadMeetingAudio(); // Mostra a coluna de presença na list ade convidados showGuests(); loadUsersWithSelected(guestList); // Carrega users na base de dados e marca os selecioandos }
public HttpResponseMessage GetMeetingsByDate(string month, string year) { HttpResponseMessage msg = new HttpResponseMessage(); MeetingController con = new MeetingController(); msg.Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(con.GetFilteredByDate(Convert.ToInt32(month), Convert.ToInt32(year))), System.Text.Encoding.UTF8, "application/json"); return(msg); }
public HttpResponseMessage GetMeetingsByGroupType(string group, string type) { MeetingController con = new MeetingController(); return(new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(con.GetFilteredByGT(Convert.ToInt32(group), Convert.ToInt32(type))), System.Text.Encoding.UTF8, "application/json") }); }
public HttpResponseMessage GetMeetingsByOffset(string offset, string pagesize) { HttpResponseMessage msg = new HttpResponseMessage(); MeetingController conM = new MeetingController(); msg.Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(conM.GetByOffset(Convert.ToInt32(offset), Convert.ToInt32(pagesize))), System.Text.Encoding.UTF8, "application/json"); return(msg); }
public HttpResponseMessage GetMeetingsJSON() { MeetingController conM = new MeetingController(); return(new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(conM.GetAllMeetings()), System.Text.Encoding.UTF8, "application/json") }); }
public async void AddParticipant_FailsWhenParticipantIsBusy() { const int idFirstMeeting = 1; const int idSecondMeeting = 2; const int idParticipant = 1; _context.Meetings.Add( new Meeting { Id = idFirstMeeting, Name = "meeting1", StartDateTimeMeeting = new DateTime(2020, 06, 12, 21, 30, 00), EndDateTimeMeeting = new DateTime(2020, 06, 12, 23, 30, 00) } ); _context.Meetings.Add( new Meeting { Id = idSecondMeeting, Name = "meeting2", StartDateTimeMeeting = new DateTime(2020, 06, 12, 22, 00, 00), EndDateTimeMeeting = new DateTime(2020, 06, 12, 23, 00, 00) } ); _context.Participants.Add( new Participant { Id = idParticipant, Name = "Sasha", Email = "*****@*****.**" } ); _context.MeetingParticipants.Add( new MeetingParticipant { MeetingId = idFirstMeeting, ParticipantId = idParticipant } ); _context.SaveChanges(); var controller = new MeetingController(_context, _emailServiceMock.Object); var result = await controller.AddParticipant(idSecondMeeting, idParticipant); Assert.Single(_context.MeetingParticipants); Assert.NotNull(result); Assert.IsType <BadRequestObjectResult>(result); _emailServiceMock.Verify(send => send.SendEmailAsync(It.IsAny <string>(), It.IsAny <Meeting>()), Times.Never); }
public void TestInitialize() { initializeMeetings(); initializeMapper(); Mock <IMeetingService> mockService = new Mock <IMeetingService>(); setupMock(mockService); mockMeetingService = mockService.Object; meetingController = new MeetingController(mockMeetingService); }
public void CreateGetNotLoggedUserTest() { ModelsMocks.CleanUpBeforeTest(); // Arrange MeetingController controller = ControllersMocks.GetControllerAsNotLoggedUser <MeetingController>(); // Act JsonResult action = controller.Create(1, 1) as JsonResult; var forbidden = (TaskVlopper.Models.JsonHttpViewModel)action.Data; Assert.AreEqual(403, forbidden.HttpCode); }
public void DetailsNotLoggedUserTest() { // Arrange MeetingController controller = ControllersMocks.GetControllerAsNotLoggedUser <MeetingController>(); // Act JsonResult action = controller.Details(ModelsMocks.ProjectModelFirst.ID, ModelsMocks.TaskModelFirst.ID, ModelsMocks.WorklogModelFirst.ID) as JsonResult; var forbidden = (TaskVlopper.Models.JsonHttpViewModel)action.Data; // Assert Assert.AreEqual(403, forbidden.HttpCode); }
protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString.HasKeys()) { _controller = new MeetingController(this); List <MeetingResult> meetings = _controller.GetAllMeetings(); lstVwMeeting.DataSource = meetings; lstVwMeeting.DataBind(); } else { Response.Redirect("/LogIn.aspx"); } }
public void DeletePostLoggedUserTest() { ModelsMocks.CleanUpBeforeTest(); ModelsMocks.AddTestProject(true); ModelsMocks.AddTestTask(true, ModelsMocks.ProjectModelFirst); ModelsMocks.AddTestMeeting(true, ModelsMocks.MeetingModelFirst, ModelsMocks.TaskModelFirst); // Arrange MeetingController controller = ControllersMocks.GetControllerAsLoggedUser <MeetingController>(); // Act JsonResult action = controller.Delete(ModelsMocks.MeetingModelFirst, ModelsMocks.ProjectModelFirst.ID, ModelsMocks.TaskModelFirst.ID, ModelsMocks.MeetingModelFirst.ID) as JsonResult; using (IUnityContainer container = UnityConfig.GetConfiguredContainer()) { var repo = container.Resolve <IMeetingRepository>(); var participantsRepo = container.Resolve <IMeetingParticipantsRepository>(); bool passed = false; try { var meeting = repo.GetMeetingByIdWithoutTracking(ModelsMocks.MeetingModelFirst.ID); } catch (Exception) { passed = true; } finally { if (!passed) { Assert.Fail(); } } try { var participants = participantsRepo.GetMeetingParticipantsByMeetingId(ModelsMocks.MeetingModelFirst.ID).SingleOrDefault(); if (participants != null) { throw new Exception("Assert fails"); } } catch (Exception) { Assert.Fail(); } } }
public void EditPostNotLoggedUserTest() { ModelsMocks.CleanUpBeforeTest(); // Arrange MeetingController controller = ControllersMocks.GetControllerAsNotLoggedUser <MeetingController>(); // Act JsonResult action = controller.Edit(ModelsMocks.MeetingModelSecond, ModelsMocks.ProjectModelFirst.ID, ModelsMocks.TaskModelFirst.ID, ModelsMocks.MeetingModelFirst.ID) as JsonResult; var forbidden = (TaskVlopper.Models.JsonHttpViewModel)action.Data; Assert.AreEqual(403, forbidden.HttpCode); }
public async Task MeetingControllerPostEdit() { var data = new MeetingApiDataHandler(); var model = MeetingData.GetFirst(); var attendance = new List <Attendance>() { AttendanceData.GetFirst(), AttendanceData.GetSecond() }; var users = new List <User>() { UserData.GetFirst(), UserData.GetSecond() }; data.Result.Setup(m => m.Execute(It.IsAny <Loader <Meeting> >())).Returns(model); data.Result.Setup(m => m.Execute(It.IsAny <Persist <Meeting> >())).Returns(model); data.Result.Setup(m => m.Execute(It.IsAny <Loaders <Attendance> >())).Returns(attendance); data.Result.Setup(m => m.Execute(It.IsAny <Loaders <User> >())).Returns(users); var controller = new MeetingController(data, new LogicHandler() { DataHandler = data }) { CurrentUser = StandardUser }; var viewModel = controller.Mapper.Map <MeetingViewModel>(model); viewModel.Attendees = new List <ResultProfile>() { UserData.GetFirstProfile(), UserData.GetSecondProfile() }; var result = await controller.Post(viewModel) as OkObjectResult; result.Should().NotBeNull(); result.Should().BeOfType <OkObjectResult>(); result.Value.Should().NotBeNull(); var check = result.Value as ConfirmViewModel; check.Identity.Should().Be(model.Id); data.HasExecuted.Should().BeTrue(); data.HasCommitted.Should().BeTrue(); data.Result.Verify(s => s.Execute(It.IsAny <Loader <Meeting> >()), Times.AtLeastOnce); data.Result.Verify(s => s.Execute(It.IsAny <Persist <Meeting> >()), Times.Never()); }
public async Task MeetingControllerGetNull() { var data = new MeetingApiDataHandler(); data.Result.Setup(m => m.Execute(It.IsAny <Loader <Meeting> >())).Returns(null); var controller = new MeetingController(data, Logic) { CurrentUser = StandardUser }; var result = await controller.Get(MeetingData.FirstId) as NotFoundResult; result.Should().NotBeNull(); result.Should().BeOfType <NotFoundResult>(); data.HasExecuted.Should().BeTrue(); data.Result.Verify(s => s.Execute(It.IsAny <Loader <Meeting> >()), Times.Once()); }
public void DeleteGetLoggedUserTest() { ModelsMocks.CleanUpBeforeTest(); ModelsMocks.AddTestProject(true); ModelsMocks.AddTestTask(true, ModelsMocks.ProjectModelFirst); ModelsMocks.AddTestMeeting(true, ModelsMocks.MeetingModelFirst, ModelsMocks.TaskModelFirst); // Arrange MeetingController controller = ControllersMocks.GetControllerAsLoggedUser <MeetingController>(); // Act JsonResult action = controller.Delete(ModelsMocks.ProjectModelFirst.ID, ModelsMocks.TaskModelFirst.ID, ModelsMocks.MeetingModelFirst.ID) as JsonResult; var meeting = (Models.MeetingViewModel)action.Data; Assert.IsNotNull(meeting); }
public HttpResponseMessage Document(string docID) { Document d = new DocumentController().GetDocumentByID(Convert.ToInt32(docID)); Meeting m = new MeetingController().GetMeetingByID(d.MeetingID); string result = "<!DOCTYPE html><html><head><title>" + m.DateString + " " + m.FormattedDescription + "</title></head><body onload=\"printPage()\">"; result += "<h1>" + m.DateString + " " + m.MeetingGroup.GroupName + " " + m.MeetingType.TypeName + "</h1>"; result += "<h3>" + d.DocumentGroup.GroupName + "</h3>"; result += HttpUtility.HtmlDecode(d.Content); result += "<script> function printPage(){ window.print();}</script>"; result += "</body></html>"; return(new HttpResponseMessage() { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/html") }); }