public void Should_throw_if_context_does_not_contain_valid_csrf_token_and_its_requested()
        {
            var nancyContext = new NancyContext();
            var viewLocationContext = new ViewLocationContext { Context = nancyContext };
            var context = new DefaultRenderContext(null, null, null, viewLocationContext);

            var result = Record.Exception(() => context.GetCsrfToken());

            result.ShouldBeOfType(typeof(InvalidOperationException));
        }
        public void Should_return_csrf_token_from_context_if_it_exists()
        {
            var nancyContext = new NancyContext();
            nancyContext.Items[CsrfToken.DEFAULT_CSRF_KEY] = "testing";
            var viewLocationContext = new ViewLocationContext { Context = nancyContext };
            var context = new DefaultRenderContext(null, null, null, viewLocationContext);

            var result = context.GetCsrfToken();

            result.ShouldNotBeNull();
            result.Key.ShouldEqual(CsrfToken.DEFAULT_CSRF_KEY);
            result.Value.ShouldEqual("testing");
        }