Пример #1
0
        private void ParserTest(string content, Block document, TagProvidersCollection providers = null)
        {
            providers = providers ?? TagProvidersCollection.Default;

            var output = new StringBuilder();

            using (var reader = new StringReader(content))
            {
                using (var source = new SeekableTextReader(reader))
                {
                    var errors = new ParserErrorSink();
                    var parser = new HandlebarsParser();

                    var context = new ParserContext(source, parser, errors, providers);
                    parser.Context = context;

                    parser.ParseDocument();

                    var results = context.CompleteParse();

                    var comparer = new EquivalanceComparer(output, 0);

                    Assert.True(comparer.Equals(document, results.Document), output.ToString());
                }
            }
        }
Пример #2
0
		/// <summary>
		/// Initializes a new instance of the <see cref="ParserContext"/> class.
		/// </summary>
		/// <param name="source">The source.</param>
		/// <param name="parser">The parser.</param>
		/// <param name="errorSink">The error sink.</param>
		public ParserContext(ITextDocument source, ParserBase parser, ParserErrorSink errorSink, TagProvidersCollection providers)
		{
			Source = new TextDocumentReader(source);
			Parser = parser;
			_errorSink = errorSink;
			TagProviders = providers;
		}
Пример #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ParserContext"/> class.
 /// </summary>
 /// <param name="source">The source.</param>
 /// <param name="parser">The parser.</param>
 /// <param name="errorSink">The error sink.</param>
 /// <param name="providers">The set of tag providers.</param>
 public ParserContext(ITextDocument source, ParserBase parser, ParserErrorSink errorSink, TagProvidersCollection providers)
 {
     Source       = new TextDocumentReader(source);
     Parser       = parser;
     _errorSink   = errorSink;
     TagProviders = providers;
 }
Пример #4
0
		protected void RenderTest(string content, string expected, object model = null, TagProvidersCollection providers = null)
		{
			var func = HandlebarsService.Compile(Guid.NewGuid().ToString(), content);
			string result = func(model);

			Assert.Equal(expected, result);
		}
Пример #5
0
 /// <summary>
 /// Initialises a new instance of <see cref="HandlebarsService"/>
 /// </summary>
 public HandlebarsService()
 {
     TagProviders          = new TagProvidersCollection(TagProvidersCollection.Default);
     ModelMetadataProvider = new DefaultModelMetadataProvider();
 }
Пример #6
0
		/// <summary>
		/// Initialises a new instance of <see cref="HandlebarsService"/>
		/// </summary>
		public HandlebarsService()
		{
			TagProviders = new TagProvidersCollection(TagProvidersCollection.Default);
			ModelMetadataProvider = new DefaultModelMetadataProvider();
		}
Пример #7
0
		private void ParserTest(string content, Block document, TagProvidersCollection providers = null)
		{
			providers = providers ?? TagProvidersCollection.Default;

			var output = new StringBuilder();
			using (var reader = new StringReader(content))
			{
				using (var source = new SeekableTextReader(reader))
				{
					var errors = new ParserErrorSink();
					var parser = new HandlebarsParser();

					var context = new ParserContext(source, parser, errors, providers);
					parser.Context = context;

					parser.ParseDocument();

					var results = context.CompleteParse();

					var comparer = new EquivalanceComparer(output, 0);

					Assert.True(comparer.Equals(document, results.Document), output.ToString());
				}
			}
		}
Пример #8
0
        protected void RenderTest(string content, string expected, object model = null, TagProvidersCollection providers = null)
        {
            var    func   = HandlebarsService.Compile(Guid.NewGuid().ToString(), content);
            string result = func(model);

            Assert.Equal(expected, result);
        }