Exemplo n.º 1
0
        public static RazorEngine CreateEmpty(Action <IRazorEngineBuilder> configure)
        {
            var builder = new DefaultRazorEngineBuilder(designTime: false);

            configure?.Invoke(builder);
            return(builder.Build());
        }
Exemplo n.º 2
0
        public void Build_AddsFeaturesAndPhases()
        {
            // Arrange
            var builder = new DefaultRazorEngineBuilder(designTime: false);

            builder.Features.Add(Mock.Of <IRazorEngineFeature>());
            builder.Features.Add(Mock.Of <IRazorEngineFeature>());

            builder.Phases.Add(Mock.Of <IRazorEnginePhase>());
            builder.Phases.Add(Mock.Of <IRazorEnginePhase>());

            var features = builder.Features.ToArray();
            var phases   = builder.Phases.ToArray();

            // Act
            var engine = builder.Build();

            // Assert
            Assert.Collection(
                engine.Features,
                f => Assert.Same(features[0], f),
                f => Assert.Same(features[1], f));

            Assert.Collection(
                engine.Phases,
                p => Assert.Same(phases[0], p),
                p => Assert.Same(phases[1], p));
        }
Exemplo n.º 3
0
        public static RazorEngine CreateDesignTime(Action <IRazorEngineBuilder> configure)
        {
            var builder = new DefaultRazorEngineBuilder(designTime: true);

            AddDefaults(builder);
            AddDesignTimeDefaults(builder);
            configure?.Invoke(builder);
            return(builder.Build());
        }
Exemplo n.º 4
0
        public static RazorEngine CreateDesignTimeEmpty(Action <IRazorEngineBuilder> configure)
        {
            if (configure == null)
            {
                throw new ArgumentNullException(nameof(configure));
            }

            var builder = new DefaultRazorEngineBuilder(designTime: true);

            configure(builder);
            return(builder.Build());
        }
Exemplo n.º 5
0
        // Internal since RazorEngine APIs are going to be obsolete.
        internal static RazorEngine CreateCore(RazorConfiguration configuration, bool designTime, Action <IRazorEngineBuilder> configure)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            var builder = new DefaultRazorEngineBuilder(designTime);

            AddDefaults(builder);

            if (designTime)
            {
                AddDefaultDesignTimeFeatures(configuration, builder.Features);
            }
            else
            {
                AddDefaultRuntimeFeatures(configuration, builder.Features);
            }

            configure?.Invoke(builder);
            return(builder.Build());
        }
Exemplo n.º 6
0
#pragma warning disable CS0618 // Type or member is obsolete
        private static RazorEngine CreateCore(RazorConfiguration configuration, bool designTime, Action <IRazorEngineBuilder> configure)
#pragma warning restore CS0618 // Type or member is obsolete
        {
            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            var builder = new DefaultRazorEngineBuilder(designTime);

            AddDefaults(builder);

            if (designTime)
            {
                AddDefaultDesignTimeFeatures(configuration, builder.Features);
            }
            else
            {
                AddDefaultRuntimeFeatures(configuration, builder.Features);
            }

            configure?.Invoke(builder);
            return(builder.Build());
        }