Esempio n. 1
0
        public void SessionStateModel_Serialize_Test()
        {
            XmlSerializer s = new XmlSerializer(typeof(SessionStateModel));

            SessionStateModel expectedModel = new SessionStateModel()
            {
                OriginalUri  = "http://test.com/abc",
                PlaceInQueue = 14575,
                QueueId      = Guid.NewGuid(),
                RedirectType = RedirectType.Queue,
                TimeStamp    = DateTime.UtcNow,
                Expiration   = DateTime.UtcNow.AddMinutes(3)
            };

            MemoryStream stream = new MemoryStream();

            s.Serialize(stream, expectedModel);

            stream.Position = 0;

            SessionStateModel actualModel = s.Deserialize(stream) as SessionStateModel;

            Assert.IsNotNull(actualModel);
            Assert.AreEqual(expectedModel.OriginalUri, actualModel.OriginalUri);
            Assert.AreEqual(expectedModel.PlaceInQueue, actualModel.PlaceInQueue);
            Assert.AreEqual(expectedModel.QueueId, actualModel.QueueId);
            Assert.AreEqual(expectedModel.RedirectType, actualModel.RedirectType);
            Assert.AreEqual(expectedModel.TimeStamp, actualModel.TimeStamp);
            Assert.AreEqual(expectedModel.Expiration, actualModel.Expiration);
        }
        public void SessionStateModel_Serialize_Test()
        {
            XmlSerializer s = new XmlSerializer(typeof(SessionStateModel));

            SessionStateModel expectedModel = new SessionStateModel()
            {
                OriginalUri = "http://test.com/abc",
                PlaceInQueue = 14575,
                QueueId = Guid.NewGuid(),
                RedirectType = RedirectType.Queue,
                TimeStamp = DateTime.UtcNow,
                Expiration = DateTime.UtcNow.AddMinutes(3)
            };

            MemoryStream stream = new MemoryStream();
            s.Serialize(stream, expectedModel);

            stream.Position = 0;

            SessionStateModel actualModel = s.Deserialize(stream) as SessionStateModel;

            Assert.IsNotNull(actualModel);
            Assert.AreEqual(expectedModel.OriginalUri, actualModel.OriginalUri);
            Assert.AreEqual(expectedModel.PlaceInQueue, actualModel.PlaceInQueue);
            Assert.AreEqual(expectedModel.QueueId, actualModel.QueueId);
            Assert.AreEqual(expectedModel.RedirectType, actualModel.RedirectType);
            Assert.AreEqual(expectedModel.TimeStamp, actualModel.TimeStamp);
            Assert.AreEqual(expectedModel.Expiration, actualModel.Expiration);

        }
        public void SessionValidateResultRepository_Cancel_Test()
        {
            string sessionKey = "QueueITAccepted-SDFrts345E-customerid-eventid";

            SessionStateModel model = new SessionStateModel()
            {
                OriginalUri  = "http://original.url/",
                PlaceInQueue = 5486,
                QueueId      = Guid.NewGuid(),
                RedirectType = RedirectType.Queue,
                TimeStamp    = DateTime.UtcNow
            };

            HttpContext.Current.Session[sessionKey] = model;

            this._queue.Stub(queue => queue.CustomerId).Return("CustomerId");
            this._queue.Stub(queue => queue.EventId).Return("EventId");

            SessionValidateResultRepository repository = new SessionValidateResultRepository();

            AcceptedConfirmedResult actualValidationResult = repository.GetValidationResult(this._queue)
                                                             as AcceptedConfirmedResult;

            repository.Cancel(this._queue, actualValidationResult);

            Assert.IsNull(HttpContext.Current.Session[sessionKey]);
        }
        public void SessionValidateResultRepository_GetValidationResult_Test()
        {
            string sessionKey = "QueueITAccepted-SDFrts345E-customerid-eventid";

            SessionStateModel model = new SessionStateModel()
            {
                OriginalUri  = "http://original.url/",
                PlaceInQueue = 5486,
                QueueId      = Guid.NewGuid(),
                RedirectType = RedirectType.Queue,
                TimeStamp    = DateTime.UtcNow
            };

            HttpContext.Current.Session[sessionKey] = model;

            this._queue.Stub(queue => queue.CustomerId).Return("CustomerId");
            this._queue.Stub(queue => queue.EventId).Return("EventId");

            SessionValidateResultRepository repository = new SessionValidateResultRepository();

            AcceptedConfirmedResult actualValidationResult = repository.GetValidationResult(this._queue)
                                                             as AcceptedConfirmedResult;

            Assert.IsNotNull(actualValidationResult);
            Assert.AreEqual(new Uri(model.OriginalUri), actualValidationResult.KnownUser.OriginalUrl);
            Assert.AreEqual(model.PlaceInQueue, actualValidationResult.KnownUser.PlaceInQueue);
            Assert.AreEqual(model.QueueId, actualValidationResult.KnownUser.QueueId);
            Assert.AreEqual(model.RedirectType, actualValidationResult.KnownUser.RedirectType);
            Assert.AreEqual(model.TimeStamp, actualValidationResult.KnownUser.TimeStamp);
            Assert.IsFalse(actualValidationResult.IsInitialValidationRequest);
            Assert.AreSame(this._queue, actualValidationResult.Queue);
        }
Esempio n. 5
0
        public ActionResult Index()
        {
            SessionStateModel sessionState;

            if (Session["CurrentSession"] != null)
            {
                sessionState = (SessionStateModel)Session["CurrentSession"];
            }
            else
            {
                sessionState = new SessionStateModel();
            }

            sessionState.Counter++;
            Session["CurrentSession"] = sessionState;
            ViewBag.sessionID         = Session.SessionID;
            return(View(sessionState));
        }
Esempio n. 6
0
        public ActionResult Index()
        {
            SessionStateModel sessionState;

            if (HttpContext.Application["CurrentSession"] != null)
            {
                sessionState = (SessionStateModel)HttpContext.Application["CurrentSession"];
            }
            else
            {
                sessionState = new SessionStateModel();
            }

            sessionState.Counter++;
            HttpContext.Application["CurrentSession"] = sessionState;
            ViewBag.sessionID = HttpContext.Application;
            return(View(sessionState));
        }
        public void SessionValidateResultRepository_Cancel_Test()
        {
            string sessionKey = "QueueITAccepted-SDFrts345E-customerid-eventid";

            SessionStateModel model = new SessionStateModel()
            {
                OriginalUri = "http://original.url/",
                PlaceInQueue = 5486,
                QueueId = Guid.NewGuid(),
                RedirectType = RedirectType.Queue,
                TimeStamp = DateTime.UtcNow
            };
            HttpContext.Current.Session[sessionKey] = model;

            this._queue.Stub(queue => queue.CustomerId).Return("CustomerId");
            this._queue.Stub(queue => queue.EventId).Return("EventId");

            SessionValidateResultRepository repository = new SessionValidateResultRepository();
            
            AcceptedConfirmedResult actualValidationResult = repository.GetValidationResult(this._queue)
                as AcceptedConfirmedResult;
            repository.Cancel(this._queue, actualValidationResult);

            Assert.IsNull(HttpContext.Current.Session[sessionKey]);
        }
        public void SessionValidateResultRepository_GetValidationResult_Test()
        {
            string sessionKey = "QueueITAccepted-SDFrts345E-customerid-eventid";

            SessionStateModel model = new SessionStateModel()
            {
                OriginalUri = "http://original.url/",
                PlaceInQueue = 5486,
                QueueId = Guid.NewGuid(),
                RedirectType = RedirectType.Queue,
                TimeStamp = DateTime.UtcNow
            };
            HttpContext.Current.Session[sessionKey] = model;

            this._queue.Stub(queue => queue.CustomerId).Return("CustomerId");
            this._queue.Stub(queue => queue.EventId).Return("EventId");

            SessionValidateResultRepository repository = new SessionValidateResultRepository();

            AcceptedConfirmedResult actualValidationResult = repository.GetValidationResult(this._queue) 
                as AcceptedConfirmedResult;

            Assert.IsNotNull(actualValidationResult);
            Assert.AreEqual(new Uri(model.OriginalUri), actualValidationResult.KnownUser.OriginalUrl);
            Assert.AreEqual(model.PlaceInQueue, actualValidationResult.KnownUser.PlaceInQueue);
            Assert.AreEqual(model.QueueId, actualValidationResult.KnownUser.QueueId);
            Assert.AreEqual(model.RedirectType, actualValidationResult.KnownUser.RedirectType);
            Assert.AreEqual(model.TimeStamp, actualValidationResult.KnownUser.TimeStamp);
            Assert.IsFalse(actualValidationResult.IsInitialValidationRequest);
            Assert.AreSame(this._queue, actualValidationResult.Queue);
        }
Esempio n. 9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SessionManager"/> class.
 /// </summary>
 /// <param name="sessionStateModel">The session state model.</param>
 public SessionManager(SessionStateModel sessionStateModel)
 {
     this.sessionStateModel = sessionStateModel;
 }