public EventTypesTest() { //Arrange controller = new EventTypesController(new InMemoryEventTypesAgent()); //must set explicitly for tests to work controller.ObjectValidator = new InMemoryModelValidator(); }
/// <summary> /// Initializes a new instance of the <see cref="EventTypesControllerTest"/> class. /// </summary> public EventTypesControllerTest() { this.manager = new Mock<IEventTypeManager>(); this.controller = new EventTypesController(this.manager.Object); this.controller.Request = new HttpRequestMessage(); this.controller.Configuration = new HttpConfiguration(); }
public async void Edit_ReturnsANotFoundResult(int?eventtyperId) { //Arrange EventTypesController eventtypescontroller = new EventTypesController(context); //Act var result = await eventtypescontroller.Edit(eventtyperId); //Assert Assert.IsType <NotFoundResult>(result); }
public void Create_ReturnsAViewResult() { //Arrange EventTypesController eventtypescontroller = new EventTypesController(context); //Act var result = eventtypescontroller.Create(); //Assert Assert.IsType <ViewResult>(result); }
public async void Index_ReturnsAViewResult() { //Arrange EventTypesController eventtypescontroller = new EventTypesController(context); //Act var result = await eventtypescontroller.Index(null, "", "", null); //Assert Assert.IsType <ViewResult>(result); }
public async void Details_ReturnsAViewResult() { //Arrange EventTypesController eventtypescontroller = new EventTypesController(context); //Act var result = await eventtypescontroller.Details(1); //Assert Assert.IsType <ViewResult>(result); }
public async void Edit_Post_RedirectToActionResult() { //Arrange EventTypesController eventtypescontroller = new EventTypesController(context); //Act var result = await eventtypescontroller.Edit(1, context.EventTypes.First()); //Assert Assert.IsType <RedirectToActionResult>(result); }
public async void Delete_Confirm_RedirectToActionResult() { //Arrange EventTypesController eventtypescontroller = new EventTypesController(context); //Act var result = await eventtypescontroller.DeleteConfirmed(1); //Assert Assert.IsType <RedirectToActionResult>(result); }
public async void Edit_Post_ReturnsANotFoundEventResult() { //Arrange EventTypesController eventtypescontroller = new EventTypesController(context); //Act var result = await eventtypescontroller.Edit(2, new EventTypes() { Id = 2 }); //Assert Assert.IsType <NotFoundResult>(result); }
public async Task Edit_ReturnsHttpNotFoundWhenEventTypeIdNotFound() { //Arrange int EventTypeID = 4; var dbContext = await GetDatabaseContext(); var eventTypesController = new EventTypesController(dbContext); //Act var result = await eventTypesController.Edit(EventTypeID); //Assert Assert.IsType <NotFoundResult>(result); }
public async void CreateAdd_RedirectToActionResult() { //Arrange EventTypesController eventtypescontroller = new EventTypesController(context); //Act var result = await eventtypescontroller.Create(new EventTypes() { Id = 2, Type = "Marrige" }); //Assert Assert.IsType <RedirectToActionResult>(result); }
public async Task Index_ReturnsAViewResult_WithAListOfEventTypes() { //Arrange var dbContext = await GetDatabaseContext(); var eventTypesController = new EventTypesController(dbContext); //Act var result = await eventTypesController.Index("", "", "", null); // Assert var viewResult = Assert.IsType <ViewResult>(result); var model = Assert.IsAssignableFrom <IEnumerable <EventType> >( viewResult.ViewData.Model); Assert.Equal(2, model.Count()); }
public void EventTypeEditTest() { var account = TestHelper.GetTestAccount(); var user = TestHelper.GetAccountAdminUser(account.Id); var eventType = TestHelper.GetTestEventType(account.Id); EventTypeEditModel model; using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Edit(eventType.Id); model = (EventTypeEditModel)result.Model; Assert.Equal(eventType.Id, model.Id); Assert.Equal(eventType.DisplayName, model.DisplayName); Assert.Equal(eventType.SystemName, model.SystemName); Assert.Equal(eventType.Category, model.Category); Assert.Equal(TimeSpanHelper.FromSeconds(eventType.JoinIntervalSeconds), model.JoinInterval); Assert.Equal(eventType.OldVersion, model.OldVersion); Assert.Equal(eventType.ImportanceForOld, model.ImportanceForOld); Assert.Equal(eventType.ImportanceForNew, model.ImportanceForNew); Assert.Equal(eventType.IsSystem, model.IsSystem); } model.DisplayName += "New"; model.SystemName += "New"; model.Category = EventCategory.ComponentEvent; model.JoinInterval = TimeSpanHelper.FromSeconds(10); model.OldVersion = "2.0.0.0"; model.ImportanceForOld = EventImportance.Alarm; model.ImportanceForNew = EventImportance.Warning; using (var controller = new EventTypesController(account.Id, user.Id)) { controller.Edit(model); } var accountContext = AccountDbContext.CreateFromAccountId(account.Id); var eventTypeRepository = accountContext.GetEventTypeRepository(); eventType = eventTypeRepository.GetById(model.Id); Assert.Equal(model.Id, eventType.Id); Assert.Equal(model.DisplayName, eventType.DisplayName); Assert.Equal(model.SystemName, eventType.SystemName); Assert.Equal(model.Category, eventType.Category); Assert.Equal(model.JoinInterval, TimeSpanHelper.FromSeconds(eventType.JoinIntervalSeconds)); Assert.Equal(model.OldVersion, eventType.OldVersion); Assert.Equal(model.ImportanceForOld, eventType.ImportanceForOld); Assert.Equal(model.ImportanceForNew, eventType.ImportanceForNew); Assert.Equal(model.IsSystem, eventType.IsSystem); }
public async Task Details_ReturnsViewResultWithEventTypeModel() { //Arrange var dbContext = await GetDatabaseContext(); var eventTypesController = new EventTypesController(dbContext); //Act var result = await eventTypesController.Details(11); //Assert var viewResult = Assert.IsType <ViewResult>(result); var model = Assert.IsType <EventType>( viewResult.ViewData.Model); Assert.Equal(11, model.EventTypeID); Assert.Equal("Sport", model.Type); }
public void EventTypeDeleteTest() { var account = TestHelper.GetTestAccount(); var user = TestHelper.GetAccountAdminUser(account.Id); DeleteConfirmationModel model; string systemName; using (var accountContext = AccountDbContext.CreateFromAccountId(account.Id)) { var eventTypeRepository = new EventTypeRepository(accountContext); var eventType = new EventType() { Category = EventCategory.ComponentEvent, DisplayName = "Тестовый тип события " + DateTime.Now.Ticks, ImportanceForNew = EventImportance.Success, JoinIntervalSeconds = 0, SystemName = "EventType.Test " + DateTime.Now.Ticks }; eventType = eventTypeRepository.GetOrCreate(eventType); systemName = eventType.SystemName; using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Delete(eventType.Id); model = (DeleteConfirmationModel)result.Model; } using (var controller = new EventTypesController(account.Id, user.Id)) { controller.Delete(model); } } using (var accountContext = AccountDbContext.CreateFromAccountId(account.Id)) { var eventTypeRepository = new EventTypeRepository(accountContext); var eventType = eventTypeRepository.GetById(Guid.Parse(model.Id)); Assert.NotNull(eventType); Assert.True(eventType.IsDeleted); eventType = eventTypeRepository.GetOneOrNullBySystemName(systemName); Assert.Null(eventType); } }
public void EventTypeShowTest() { var account = TestHelper.GetTestAccount(); var user = TestHelper.GetAccountAdminUser(account.Id); var eventType = TestHelper.GetTestEventType(account.Id); using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Show(eventType.Id, TimelineInterval.Day); var model = (EventTypeShowModel)result.Model; Assert.Equal(eventType.Id, model.Id); Assert.Equal(eventType.DisplayName, model.DisplayName); Assert.Equal(eventType.SystemName, model.SystemName); Assert.Equal(eventType.Category, model.Category); Assert.Equal(eventType.JoinIntervalSeconds, TimeSpanHelper.GetSeconds(model.JoinInterval)); Assert.Equal(eventType.OldVersion, model.OldVersion); Assert.Equal(eventType.ImportanceForOld, model.ImportanceForOld); Assert.Equal(eventType.ImportanceForNew, model.ImportanceForNew); Assert.Equal(eventType.IsSystem, model.IsSystem); } }
public void EventTypeAddTest() { var account = TestHelper.GetTestAccount(); var user = TestHelper.GetAccountAdminUser(account.Id); EventTypeEditModel model; using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Add(); model = (EventTypeEditModel)result.Model; } model.DisplayName = "New test event type " + Guid.NewGuid(); model.SystemName += model.DisplayName; model.Category = EventCategory.ComponentEvent; model.ImportanceForNew = EventImportance.Success; model.JoinInterval = TimeSpan.FromSeconds(10); model.OldVersion = "1.0.0.0"; model.ImportanceForOld = EventImportance.Alarm; model.ImportanceForNew = EventImportance.Warning; using (var controller = new EventTypesController(account.Id, user.Id)) { controller.Add(model); } var accountContext = AccountDbContext.CreateFromAccountId(account.Id); var eventTypeRepository = accountContext.GetEventTypeRepository(); var eventType = eventTypeRepository.GetOneOrNullBySystemName(model.SystemName); Assert.NotNull(eventType); Assert.Equal(model.DisplayName, eventType.DisplayName); Assert.Equal(model.SystemName, eventType.SystemName); Assert.Equal(model.Category, eventType.Category); Assert.Equal(model.JoinInterval, TimeSpanHelper.FromSeconds(eventType.JoinIntervalSeconds)); Assert.Equal(model.OldVersion, eventType.OldVersion); Assert.Equal(model.ImportanceForOld, eventType.ImportanceForOld); Assert.Equal(model.ImportanceForNew, eventType.ImportanceForNew); Assert.Equal(model.IsSystem, eventType.IsSystem); }
public void SetUp() { mockEventTypesRepository = new Mock <IEventTypesRepository>(); sut = new EventTypesController(mockEventTypesRepository.Object); }
public void EventTypesListTest() { var account = TestHelper.GetTestAccount(); var user = TestHelper.GetAccountAdminUser(account.Id); var accountContext = AccountDbContext.CreateFromAccountId(account.Id); var eventTypeRepository = accountContext.GetEventTypeRepository(); // Создадим три типа событий // ComponentEvent, Info var eventType1 = new EventType() { Category = EventCategory.ComponentEvent, DisplayName = "Тестовый тип события " + DateTime.Now.Ticks + " ComponentEvent, Info", ImportanceForNew = EventImportance.Success, JoinIntervalSeconds = 0, SystemName = "EventType.Test " + DateTime.Now.Ticks + " ComponentEvent, Info" }; eventType1 = eventTypeRepository.GetOrCreate(eventType1); // ComponentEvent, Alarm var eventType2 = new EventType() { Category = EventCategory.ComponentEvent, DisplayName = "Тестовый тип события " + DateTime.Now.Ticks + " ComponentEvent, Alarm", ImportanceForNew = EventImportance.Alarm, JoinIntervalSeconds = 0, SystemName = "EventType.Test " + DateTime.Now.Ticks + " ComponentEvent, Alarm" }; eventType2 = eventTypeRepository.GetOrCreate(eventType2); // ApplicationError, Alarm var eventType3 = new EventType() { Category = EventCategory.ApplicationError, DisplayName = "Тестовый тип события " + DateTime.Now.Ticks + " ApplicationError, Alarm", ImportanceForNew = EventImportance.Alarm, JoinIntervalSeconds = 0, SystemName = "EventType.Test " + DateTime.Now.Ticks + " ApplicationError, Alarm" }; eventType3 = eventTypeRepository.GetOrCreate(eventType3); // Проверим, что на странице без фильтров есть только типы с категорией ComponentEvent using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Index(); var model = (EventTypesListModel)result.Model; var types = model.EventTypes.ToList(); Assert.True(types.Any(t => t.Id == eventType1.Id)); Assert.True(types.Any(t => t.Id == eventType2.Id)); Assert.False(types.Any(t => t.Id == eventType3.Id)); } // Проверим фильтр по категории using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Index(category: "ApplicationError"); var model = (EventTypesListModel)result.Model; Assert.False(model.EventTypes.Any(t => t.Id == eventType1.Id)); Assert.False(model.EventTypes.Any(t => t.Id == eventType2.Id)); Assert.True(model.EventTypes.Any(t => t.Id == eventType3.Id)); } // Проверим фильтр по важности using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Index(importance: "Alarm"); var model = (EventTypesListModel)result.Model; Assert.False(model.EventTypes.Any(t => t.Id == eventType1.Id)); Assert.True(model.EventTypes.Any(t => t.Id == eventType2.Id)); Assert.False(model.EventTypes.Any(t => t.Id == eventType3.Id)); } // Проверим фильтр по названию using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Index(search: eventType1.SystemName); var model = (EventTypesListModel)result.Model; Assert.True(model.EventTypes.Any(t => t.Id == eventType1.Id)); Assert.False(model.EventTypes.Any(t => t.Id == eventType2.Id)); Assert.False(model.EventTypes.Any(t => t.Id == eventType3.Id)); } using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Index(category: "ApplicationError", search: eventType3.DisplayName); var model = (EventTypesListModel)result.Model; Assert.False(model.EventTypes.Any(t => t.Id == eventType1.Id)); Assert.False(model.EventTypes.Any(t => t.Id == eventType2.Id)); Assert.True(model.EventTypes.Any(t => t.Id == eventType3.Id)); } //Проверим фильтр по удалённым eventTypeRepository.Remove(eventType2); using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Index(); var model = (EventTypesListModel)result.Model; Assert.True(model.EventTypes.Any(t => t.Id == eventType1.Id)); Assert.False(model.EventTypes.Any(t => t.Id == eventType2.Id)); Assert.False(model.EventTypes.Any(t => t.Id == eventType3.Id)); } using (var controller = new EventTypesController(account.Id, user.Id)) { var result = (ViewResultBase)controller.Index(showDeleted: 1); var model = (EventTypesListModel)result.Model; Assert.True(model.EventTypes.Any(t => t.Id == eventType1.Id)); Assert.True(model.EventTypes.Any(t => t.Id == eventType2.Id)); Assert.False(model.EventTypes.Any(t => t.Id == eventType3.Id)); } }