Esempio n. 1
0
            public void ErrorInConfigAfterLambdaExpansionContainsCorrectLineNumbers()
            {
                // Given
                RemoveListener();
                Engine engine = new Engine();
                FileSystem fileSystem = new FileSystem();
                Config config = new Config(engine, fileSystem);
                string configScript = @"
                Assemblies.Load("""");
                ===
                Pipelines.Add(
                Content(true
                && @doc.Get<bool>(""Key"") == false
                )
                );

                foo bar;
                ";

                // When
                AggregateException exception = null;
                try
                {
                    config.Configure(configScript, false, null, false);
                }
                catch (AggregateException ex)
                {
                    exception = ex;
                }

                // Then
                Assert.AreEqual(1, exception.InnerExceptions.Count);
                StringAssert.StartsWith("Line 10", exception.InnerExceptions[0].Message);
            }
Esempio n. 2
0
            public void CanSetCustomDocumentFactory()
            {
                // Given
                Engine engine = new Engine();
                FileSystem fileSystem = new FileSystem();
                Config config = new Config(engine, fileSystem);
                string configScript = @"
                public class MyDocument : CustomDocument
                {
                public int Count { get; set; }

                protected override CustomDocument Clone()
                {
                return new MyDocument();
                }
                }
                ---
                Engine.DocumentFactory = new CustomDocumentFactory<MyDocument>(Engine.DocumentFactory);
                ";

                // When
                config.Configure(configScript, false, null, false);

                // Then
                Assert.AreEqual("CustomDocumentFactory`1", engine.DocumentFactory.GetType().Name);
            }
Esempio n. 3
0
 public Engine()
 {
     _config = new Config(this);
     _pipelines = new PipelineCollection(this);
 }
Esempio n. 4
0
            public void ErrorInSetupContainsCorrectLineNumbers()
            {
                // Given
                RemoveListener();
                Engine engine = new Engine();
                FileSystem fileSystem = new FileSystem();
                Config config = new Config(engine, fileSystem);
                string configScript = @"
                Assemblies.Load("""");
                foo
                ===
                class Y { };
                ---
                int z = 0;
                ";

                // When
                AggregateException exception = null;
                try
                {
                    config.Configure(configScript, false, null, false);
                }
                catch (AggregateException ex)
                {
                    exception = ex;
                }

                // Then
                Assert.AreEqual(2, exception.InnerExceptions.Count);
                StringAssert.StartsWith("Line 3", exception.InnerExceptions[0].Message);
                StringAssert.StartsWith("Line 3", exception.InnerExceptions[1].Message);
            }