public void RenderTemplate_ValidRazorTemplate_ResultCorrectlyRendered()
        {
            var templateManager = new ResolvePathTemplateManager(new[] { Path.Combine(Environment.CurrentDirectory, "Templates") });
            var sut             = new DefaultRazorTemplateRenderer(templateManager);

            var str    = Guid.NewGuid().ToString();
            var result = sut.RenderTemplate(Path.Combine(Environment.CurrentDirectory, @"Templates\test.cshtml"), new { Test = str });

            result.Should().Contain(str);
        }
Esempio n. 2
0
        public string PrepareHtml(List <Node> nodes)
        {
            var model = new NodeModel {
                Nodes = nodes
            };
            //var templateManager = new ResolvePathTemplateManager( new[] {@"..\..\..\HtmlBuilder\Templates"} );
            var templateManager = new ResolvePathTemplateManager(new[] { @"\" });
            var config          = new TemplateServiceConfiguration
            {
                TemplateManager = templateManager
            };

            Engine.Razor = RazorEngineService.Create(config);
            return(Engine.Razor.RunCompile(ConfigurationManager.AppSettings.Get("xmlTemplateName"), null, model));
        }
Esempio n. 3
0
            public FileWatchDebugTemplateManager(string layoutRoot, InvalidatingCachingProvider cachingProvider)
            {
                m_cachingProvider = cachingProvider;
                m_templateManager = new ResolvePathTemplateManager(new[] { layoutRoot });

                m_fileWatcher = new SafeFileWatcher(Path.GetFullPath(layoutRoot), "*.*")
                {
                    EnableRaisingEvents   = true,
                    IncludeSubdirectories = true
                };

                m_fileWatcher.Changed += m_fileWatcher_Changed;
                m_fileWatcher.Created += m_fileWatcher_Changed;
                m_fileWatcher.Deleted += m_fileWatcher_Changed;
                m_fileWatcher.Renamed += m_fileWatcher_Changed;
            }
Esempio n. 4
0
        public void RazorEngineService_TestResolvePathTemplateManager()
        {
            var cache         = new InvalidatingCachingProvider();
            var temp          = Path.GetTempFileName();
            var template2File = Path.GetTempFileName();

            File.Delete(temp);
            try
            {
                Directory.CreateDirectory(temp);
                var mgr       = new ResolvePathTemplateManager(new[] { temp });
                var template  = @"free";
                var template2 = @"template2";
                File.WriteAllText(template2File, template2);

                var templateFileName = Path.ChangeExtension(Path.GetRandomFileName(), ".cshtml");
                var templateName     = Path.GetFileNameWithoutExtension(templateFileName);
                var templateFile     = Path.Combine(temp, templateFileName);
                File.WriteAllText(templateFile, template);

                RunTestHelper(service =>
                {
                    var model     = new { MyPrice = 0 };
                    string result = service.RunCompile(templateName, null, model);
                    Assert.AreEqual("free", result.Trim());
                    string result2 = service.RunCompile(template2File, null, model);
                    Assert.AreEqual("template2", result2.Trim());
                }, config =>
                {
                    config.CachingProvider = cache;
                    config.TemplateManager = mgr;
                });
            }
            finally
            {
                Directory.Delete(temp, true);
                if (File.Exists(template2File))
                {
                    File.Delete(template2File);
                }
            }
        }