예제 #1
0
        public void ThemeFilterDelegateCanExtractParameter()
        {
            var filter = ThemeDescriptorFilter.For(context => "foo");

            filter.ExtraParameters(_context, _extra);
            Assert.That(_extra["theme"], Is.EqualTo("foo"));
        }
예제 #2
0
        public void RegisterViewEngine(ICollection <IViewEngine> engines)
        {
            var services = SparkEngineStarter.CreateContainer();

            services.AddFilter(ThemeDescriptorFilter.For(GetTheme));
            SparkEngineStarter.RegisterViewEngine(engines, services);
        }
예제 #3
0
        public void ThemeFilterAddsThemesAndNameToPath()
        {
            var filter = ThemeDescriptorFilter.For(x => null);

            _extra["theme"] = "blue";
            var locations = filter.PotentialLocations(
                new[]
            {
                @"foo\bar.spark",
                @"shared\bar.spark",
            }, _extra);

            Assert.That(locations.SequenceEqual(
                            new[]
            {
                @"themes\blue\foo\bar.spark",
                @"themes\blue\shared\bar.spark",
                @"foo\bar.spark",
                @"shared\bar.spark",
            }));
        }