Пример #1
0
        public void Should_create_new_wrapper_from_xml_response_if_not_already_present()
        {
            // Given
            var environment = new DefaultNancyEnvironment();

            environment.AddValue(XmlConfiguration.Default);
            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            var response = new XmlResponse <Model>(new Model()
            {
                Dummy = "Data"
            }, new DefaultXmlSerializer(environment), environment);
            var context = new NancyContext()
            {
                Response = response
            };

            // When
            var result = context.XmlBody <Model>();

            // Then
            result.Dummy.ShouldEqual("Data");
        }
Пример #2
0
        public RazorViewEngineFixture()
        {
            var environment = new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            this.configuration = A.Fake <IRazorConfiguration>();
            this.engine        = new RazorViewEngine(this.configuration, environment, new AppDomainAssemblyCatalog());

            var cache = A.Fake <IViewCache>();

            A.CallTo(() => cache.GetOrAdd(A <ViewLocationResult> .Ignored, A <Func <ViewLocationResult, Func <INancyRazorView> > > .Ignored))
            .ReturnsLazily(x =>
            {
                var result = x.GetArgument <ViewLocationResult>(0);
                return(x.GetArgument <Func <ViewLocationResult, Func <INancyRazorView> > >(1).Invoke(result));
            });

            this.renderContext = A.Fake <IRenderContext>();
            A.CallTo(() => this.renderContext.ViewCache).Returns(cache);
            A.CallTo(() => this.renderContext.LocateView(A <string> .Ignored, A <object> .Ignored))
            .ReturnsLazily(x =>
            {
                var viewName = x.GetArgument <string>(0);
                return(FindView(viewName));
            });

            this.rootPathProvider = A.Fake <IRootPathProvider>();
            A.CallTo(() => this.rootPathProvider.GetRootPath()).Returns(Path.Combine(Environment.CurrentDirectory, "TestViews"));

            this.fileSystemViewLocationProvider = new FileSystemViewLocationProvider(this.rootPathProvider, new DefaultFileSystemReader());
        }
Пример #3
0
        public RazorViewEngineFixture()
        {
            var environment = new DefaultNancyEnvironment();
            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            this.configuration = A.Fake<IRazorConfiguration>();
            this.engine = new RazorViewEngine(this.configuration, environment);

            var cache = A.Fake<IViewCache>();
            A.CallTo(() => cache.GetOrAdd(A<ViewLocationResult>.Ignored, A<Func<ViewLocationResult, Func<INancyRazorView>>>.Ignored))
                .ReturnsLazily(x =>
                {
                    var result = x.GetArgument<ViewLocationResult>(0);
                    return x.GetArgument<Func<ViewLocationResult, Func<INancyRazorView>>>(1).Invoke(result);
                });

            this.renderContext = A.Fake<IRenderContext>();
            A.CallTo(() => this.renderContext.ViewCache).Returns(cache);
            A.CallTo(() => this.renderContext.LocateView(A<string>.Ignored, A<object>.Ignored))
                .ReturnsLazily(x =>
                {
                    var viewName = x.GetArgument<string>(0);
                    return FindView(viewName);
                });

            this.rootPathProvider = A.Fake<IRootPathProvider>();
            A.CallTo(() => this.rootPathProvider.GetRootPath()).Returns(Path.Combine(Environment.CurrentDirectory, "TestViews"));

            this.fileSystemViewLocationProvider = new FileSystemViewLocationProvider(this.rootPathProvider, new DefaultFileSystemReader());

            AppDomainAssemblyTypeScanner.AddAssembliesToScan("Nancy.ViewEngines.Razor.Tests.Models.dll");
        }
        public void Should_be_xml_serializable()
        {
            // Given
            var environment = new DefaultNancyEnvironment();

            environment.AddValue(Xml.XmlConfiguration.Default);
            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);
            var serializer = new Nancy.Responses.DefaultXmlSerializer(environment);
            var model      = new DefaultStatusCodeHandler.DefaultStatusCodeHandlerResult()
            {
                StatusCode = HttpStatusCode.NotFound,
                Message    = "not found",
                Details    = "not found details"
            };

            // When
            var xml = new System.Xml.XmlDocument();

            using (var stream = new MemoryStream())
            {
                serializer.Serialize("application/xml", model, stream);

                stream.Position = 0;
                xml.Load(stream);
            }

            // Then
            Assert.Equal("DefaultStatusCodeHandlerResult", xml.DocumentElement.Name);
        }
Пример #5
0
        private static DefaultRequestTraceFactory CreateFactory(bool displayErrorTraces = true)
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: displayErrorTraces);

            return(new DefaultRequestTraceFactory(environment));
        }
        public DefaultStatusCodeHandlerFixture()
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            this.responseNegotiator = A.Fake<IResponseNegotiator>();
            this.statusCodeHandler = new DefaultStatusCodeHandler(this.responseNegotiator, environment);
        }
Пример #7
0
        public DefaultStatusCodeHandlerFixture()
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            this.responseNegotiator = A.Fake <IResponseNegotiator>();
            this.statusCodeHandler  = new DefaultStatusCodeHandler(this.responseNegotiator, environment);
        }
Пример #8
0
        /// <summary>
        /// Gets a special <see cref="INancyEnvironment"/> instance that is separate from the
        /// one used by the application.
        /// </summary>
        /// <returns></returns>
        private static INancyEnvironment GetDiagnosticsEnvironment()
        {
            var diagnosticsEnvironment =
                new DefaultNancyEnvironment();

            diagnosticsEnvironment.Json(retainCasing: false);
            diagnosticsEnvironment.AddValue(ViewConfiguration.Default);
            diagnosticsEnvironment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            return(diagnosticsEnvironment);
        }
Пример #9
0
        public DefaultXmlSerializerTests()
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);
            environment.Xml(true);
            environment.Globalization(new[] { "en-US" });

            this.xmlSerializer = new DefaultXmlSerializer(environment);
        }
Пример #10
0
        private static INancyEnvironment GetTestingEnvironment()
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            environment.Json();

            return(environment);
        }
Пример #11
0
        private static INancyEnvironment GetTestableEnvironment(Action <INancyEnvironment> closure)
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            closure.Invoke(environment);

            return(environment);
        }
        private static INancyEnvironment GetTestingEnvironment()
        {
            var envionment =
                new DefaultNancyEnvironment();

            envionment.AddValue(JsonConfiguration.Default);

            envionment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            return(envionment);
        }
Пример #13
0
        public DefaultJsonSerializerTests()
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);
            environment.Json();
            environment.Globalization(new[] { "en-US" });

            this.jsonSerializer = new DefaultJsonSerializer(environment);
        }
Пример #14
0
        private static INancyEnvironment GetTestingEnvironment()
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            environment.Json();
            environment.Globalization(new []{"en-US"});

            return environment;
        }
        public XmlFormatterExtensionsFixtures()
        {
            this.rootPathProvider = A.Fake<IRootPathProvider>();
            var environment = new DefaultNancyEnvironment();
            environment.AddValue(XmlConfiguration.Default);
            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            var serializerFactory =
                new DefaultSerializerFactory(new ISerializer[] { new DefaultXmlSerializer(environment) });

            this.responseFormatter =
                new DefaultResponseFormatter(this.rootPathProvider, new NancyContext(), serializerFactory, environment);

            this.model = new Person { FirstName = "Andy", LastName = "Pike" };
            this.response = this.responseFormatter.AsXml(model);
        }
Пример #16
0
        public XmlFormatterExtensionsFixtures()
        {
            this.rootPathProvider = A.Fake <IRootPathProvider>();
            var environment = new DefaultNancyEnvironment();

            environment.AddValue(XmlConfiguration.Default);
            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            var serializerFactory =
                new DefaultSerializerFactory(new ISerializer[] { new DefaultXmlSerializer(environment) });

            this.responseFormatter =
                new DefaultResponseFormatter(this.rootPathProvider, new NancyContext(), serializerFactory, environment);

            this.model = new Person {
                FirstName = "Andy", LastName = "Pike"
            };
            this.response = this.responseFormatter.AsXml(model);
        }
Пример #17
0
        private static DefaultRequestTraceFactory CreateFactory(bool displayErrorTraces = true)
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: displayErrorTraces);

            return new DefaultRequestTraceFactory(environment);
        }
Пример #18
0
        private static INancyEnvironment GetTestableEnvironment(Action<INancyEnvironment> closure)
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            closure.Invoke(environment);

            return environment;
        }
Пример #19
0
        /// <summary>
        /// Gets a special <see cref="INancyEnvironment"/> instance that is separate from the
        /// one used by the application.
        /// </summary>
        /// <returns></returns>
        private static INancyEnvironment GetDiagnosticsEnvironment()
        {
            var diagnosticsEnvironment =
                new DefaultNancyEnvironment();

            diagnosticsEnvironment.Json(retainCasing: false);
            diagnosticsEnvironment.AddValue(ViewConfiguration.Default);
            diagnosticsEnvironment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            return diagnosticsEnvironment;
        }
        private static INancyEnvironment GetTestingEnvironment()
        {
            var envionment =
                new DefaultNancyEnvironment();

            envionment.AddValue(JsonConfiguration.Default);
            envionment.AddValue(GlobalizationConfiguration.Default);

            envionment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            return envionment;
        }
Пример #21
0
        public void Should_create_new_wrapper_from_xml_response_if_not_already_present()
        {
            // Given
            var environment = new DefaultNancyEnvironment();
            environment.AddValue(XmlConfiguration.Default);
            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            var response = new XmlResponse<Model>(new Model() { Dummy = "Data" }, new DefaultXmlSerializer(environment), environment);
            var context = new NancyContext() { Response = response };

            // When
            var result = context.XmlBody<Model>();

            // Then
            result.Dummy.ShouldEqual("Data");
        }
Пример #22
0
        private static INancyEnvironment GetTestingEnvironment()
        {
            var environment =
                new DefaultNancyEnvironment();

            environment.Tracing(
                enabled: true,
                displayErrorTraces: true);

            environment.Json();

            return environment;
        }