예제 #1
0
        public void CanGetReservationAction()
        {
            var sessionItems = new SessionItemCollection();

            var queryString = new NameValueCollection
            {
                ["ReservationID"] = "123456",
                ["State"]         = "PastOther",
                ["Date"]          = DateTime.Now.ToString("yyyy-MM-dd")
            };

            var contextItems = new Dictionary <object, object>();

            using (var testContext = new SchedulerContextManager("141.213.6.57", "jgett", contextItems, sessionItems, queryString))
            {
                var rc = new ReservationController();

                testContext.Login("jgett");
                testContext.QueryString["State"] = "PastOther";
                var redirectUrl = rc.GetReservationAction(testContext.ContextBase);
                Assert.AreEqual($"~/Contact.aspx?ReservationID=123456&Path=4-1-8-62040&Date={DateTime.Now:yyyy-MM-dd}", redirectUrl);

                testContext.Login("junyang");
                testContext.QueryString["State"] = "PastSelf";
                redirectUrl = rc.GetReservationAction(testContext.ContextBase);
                Assert.AreEqual($"~/ReservationRunNotes.aspx?ReservationID=123456&Path=4-1-8-62040&Date={DateTime.Now:yyyy-MM-dd}", redirectUrl);
            }
        }
        public void CanConfirmYes()
        {
            var qs = new NameValueCollection
            {
                ["Path"] = "4-1-18-40061",
                ["Date"] = "2019-03-25"
            };

            using (var test = new SchedulerContextManager(username: "******", queryString: qs))
            {
                DateTime now = DateTime.Parse("2019-03-25 13:00");

                var helper = new SchedulerContextHelper(test.ContextBase, ServiceProvider.Current);

                ReservationModel model = new ReservationModel(helper, now)
                {
                    ActivityID = 6,                              //ddlActivity.SelectedValue
                    AccountID  = 67,                             //ddlAccount.SelectedValue
                    AutoEnd    = false,                          //chkAutoEnd.Checked
                    KeepAlive  = true,                           //chkKeepAlive.Checked
                    Notes      = string.Empty,                   //txtNotes.Text
                    ReservationProcessInfoJson = string.Empty,   //hidProcessInfoData.Value
                    DurationText                 = string.Empty, //txtDuration.Text
                    DurationSelectedValue        = "60",         //ddlDuration.SelectedValue
                    StartTimeHourSelectedValue   = "20",         //ddlStartTimeHour.SelectedValue
                    StartTimeMinuteSelectedValue = "0"           //dlStartTimeMin.SelectedValue
                };

                var rsv = model.CreateOrModifyReservation();

                Assert.IsNull(test.ContextBase.Session["ErrorMessage"]);
                Assert.AreEqual("/sselscheduler/ResourceDayWeek.aspx?Path=4-1-18-40061&Date=2019-03-25", test.ContextBase.Response.RedirectLocation);
            }
        }