当前位置: 首页>>代码示例>>C#>>正文


C# HomeController.AddNewEvent方法代码示例

本文整理汇总了C#中HomeController.AddNewEvent方法的典型用法代码示例。如果您正苦于以下问题:C# HomeController.AddNewEvent方法的具体用法?C# HomeController.AddNewEvent怎么用?C# HomeController.AddNewEvent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在HomeController的用法示例。


在下文中一共展示了HomeController.AddNewEvent方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: AddEventTest

        public void AddEventTest()
        {
            #region SetupMockInterfaces
            var mockAbsenceModel = new Mock<AbsenceModel>();
            var mockEvent1 = new Mock<Event>();
            var mockEvent2 = new Mock<Event>();
            var mockEvent3 = new Mock<Event>();
            var mockEvent4 = new Mock<Event>();

            var events = new List<Event>
                {
                    mockEvent1.Object,
                    mockEvent2.Object,
                    mockEvent3.Object,
                    mockEvent4.Object
                };

            var mockEventNew = new Mock<Event>();
            var newEventId = Guid.NewGuid();

            mockAbsenceModel.Setup(m => m.GetAbsences(It.IsAny<int>(), It.IsAny<int>())).Returns(events);
            mockAbsenceModel.Setup(m => m.AddNewEvent(It.IsAny<string>(), It.IsAny<DateTime>(), It.IsAny<DateTime>(), It.IsAny<bool>(), It.IsAny<EventType>()))
                            .Returns(newEventId);
            #endregion

            #region Mock object setup
            int curMonth = DateTime.Today.Month;
            int curYear = DateTime.Today.Year;

            DateTime startOfMonth = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1);
            DateTime endOfMonth = startOfMonth.AddMonths(1).AddDays(-1);
            Random randStart = new Random();

            var fcevents = new Queue<FCEvent>(100);
            for (int i = 0; i < 4; i++)
            {
                var sd = startOfMonth.AddDays(randStart.Next(28));
                var ed = sd.AddDays(randStart.Next(4));

                fcevents.Enqueue(new FCEvent
                {
                    id = Guid.Empty,
                    title = "Mock FC Event " + i.ToString(),
                    allDay = false,
                    start = sd,
                    end = ed,
                    url = string.Empty,
                    className = "owner-event",
                    editable = true,
                    startEditable = true,
                    durationEditable = true
                });
            }

            var mockEventBuilder = new Mock<EventBuilder>();
            mockEventBuilder.Setup(m =>
                m.Build(It.IsAny<Guid>(), It.IsAny<string>(), It.IsAny<DateTime>(), It.IsAny<DateTime>(),
                        It.IsAny<bool>(), It.IsAny<bool>(), It.IsAny<bool>(), It.IsAny<bool>(), It.IsAny<EventType>()));
            mockEventBuilder.SetupSequence(m =>
                m.GetEvent())
                .Returns(fcevents.Dequeue())
                .Returns(fcevents.Dequeue())
                .Returns(fcevents.Dequeue())
                .Returns(fcevents.Dequeue());
            #endregion

            var controller = new HomeController(mockAbsenceModel.Object);
            controller.EventBuilder = mockEventBuilder.Object;

            var addEventResult = controller.AddNewEvent(
                "My new event", DateTime.Today, DateTime.Today, false, EventType.Vacation);

            #region Mock object verification

            #endregion

            #region Assertions
            Assert.IsInstanceOfType(addEventResult, typeof(JsonResult));
            Assert.IsInstanceOfType(addEventResult.Data, typeof(Guid));
            Assert.AreEqual(newEventId, addEventResult.Data);
            #endregion
        }
开发者ID:Kev1nR,项目名称:AbsenceManagementWeb,代码行数:82,代码来源:HomeControllerTest.cs


注:本文中的HomeController.AddNewEvent方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。