Example #1
0
        public void DeleteBookingReturns201()
        {
            BookingPayload payload = new BookingPayload();

            payload.SetFirstname("Mary");
            payload.SetLastname("White");
            payload.SetTotalPrice(200);
            payload.SetDepositPaid(true);
            payload.SetBookingDates(new BookingDatesPayload(new DateTime(2017, 3, 31), new DateTime(2017, 4, 3)));
            payload.SetAdditionalNeeds("None");

            var    response        = Booking.PostBooking(payload);
            string responsePayload = response.Content.ReadAsStringAsync().Result;
            BookingResponsePayload bookingResponse = JsonConvert.DeserializeObject <BookingResponsePayload>(responsePayload);

            AuthPayload authPayload = new AuthPayload();

            authPayload.SetUsername("admin");
            authPayload.SetPassword("password123");

            AuthResponsePayload authResponse = Auth.PostAuth(authPayload);

            var deleteResponse = Booking.DeleteBooking(bookingResponse.bookingid, authResponse.token);

            Assert.IsTrue(deleteResponse.StatusCode == HttpStatusCode.Created, "Http Status Code is not 201");
        }
        public IActionResult Index(AuthenticationIdentity identity)
        {
            if (!ModelState.IsValid)
            {
                return(View("Authentication", identity));
            }

            MvcIdentityModel computed = Identity.GetIdentityByEmail(identity.Email);

            if (computed == default(MvcIdentityModel))
            {
                ModelState.AddModelError("General", "The entered email and/or password is incorrect!");
                return(View("Authentication", identity));
            }

            if (!computed.VerifyPassword(identity.Password))
            {
                ModelState.AddModelError("General", "The entered email and/or password is incorrect!");
                return(View("Authentication", identity));
            }

            var sid = Request.Cookies.ContainsKey("SID") ? Guid.Parse(Request.Cookies["SID"]) : Guid.Empty;

            if (sid == Guid.Empty)
            {
                ModelState.AddModelError("General", "The session ID was lost between authentication steps!");
                return(View("Authentication", identity));
            }

            var session     = SessionStore.GetSession(sid);
            var authRequest = session.GetAttribute <AuthRequestPayload>("AuthRequest");

            var authResponse = new AuthResponsePayload()
            {
                Authenticated = true,
                RequestId     = authRequest.RequestId,
                SessionId     = session.Guid,
                SessionExpiry = session.ExpiryTime,
                Identity      = computed.ToBaseModel()
            };

            session["AuthPayload"] = authResponse;

            HttpHandler.Post(authRequest.ResponseUri, authResponse.Encode()).Wait();
            return(Redirect(authRequest.RedirectUri.ToString()));
        }