public void DecorateOfOneFileOneAttributeTiles()
        {
            var config = new MockConfiguration("a", DateTime.Now)
            {
                Factory = _locatorFactory
            };

            config.Entries.Add(new MockTileEntry
            {
                Name           = "a",
                Path           = "a.htm",
                TileAttributes = new List <IAttributeEntry> {
                    new MockAttributeEntry
                    {
                        Name  = "b",
                        Value = "value"
                    }
                }
            });
            var set = TilesFactory.AssembleFor(config).Map;

            Assert.That(set.Tiles.Count, Is.EqualTo(1));
            Assert.That(set.Contains("a"));
            TemplateTile tile = (TemplateTile)set.Get("a");

            Assert.That(tile.Attributes, Is.Not.Null);
            Assert.That(tile.Attributes.Count, Is.EqualTo(1));
            Assert.That(tile.Attributes["b"], Is.Not.Null);
        }
Beispiel #2
0
 public void ErrorFileShouldSaveParseContext()
 {
     var lib = new TagLib();
     lib.Register(new Tags.Tiles());
     lib.Register(new Sharp());
     var factory = new FileLocatorFactory().CloneForTagLib(lib) as FileLocatorFactory;
     try
     {
         new TilesSet();
         var tile = new TemplateTile(
             "test",
             factory.Handle("errorinfile.htm",true),
             null
             );
     }
     catch (TemplateExceptionWithContext TEWC)
     {
         Assert.That(TEWC.Context, Is.Not.Null);
         Assert.That(TEWC.Context.LineNumber, Is.EqualTo(2));
         string fullPath = Path.GetFullPath("errorinfile.htm");
         TagException tagException =
             TagException.UnbalancedCloseingTag(new ForEach() {Group = new Core()}, new If() { Group = new Core() }).Decorate(TEWC.Context);
         Assert.That(TEWC.Message,
                     Is.EqualTo(TemplateExceptionWithContext.ErrorInTemplate(fullPath, tagException).Message));
     }
 }
        public void ErrorFileShouldSaveParseContext()
        {
            var lib = new TagLib();

            lib.Register(new Tags.Tiles());
            lib.Register(new Sharp());
            var factory = new FileLocatorFactory().CloneForTagLib(lib) as FileLocatorFactory;

            try
            {
                new TilesSet();
                var tile = new TemplateTile(
                    "test",
                    factory.Handle("errorinfile.htm", true),
                    null
                    );
            }
            catch (TemplateExceptionWithContext TEWC)
            {
                Assert.That(TEWC.Context, Is.Not.Null);
                Assert.That(TEWC.Context.LineNumber, Is.EqualTo(2));
                string       fullPath     = Path.GetFullPath("errorinfile.htm");
                TagException tagException =
                    TagException.UnbalancedCloseingTag(new ForEach()
                {
                    Group = new Core()
                }, new If()
                {
                    Group = new Core()
                }).Decorate(TEWC.Context);
                Assert.That(TEWC.Message,
                            Is.EqualTo(TemplateExceptionWithContext.ErrorInTemplate(fullPath, tagException).Message));
            }
        }
Beispiel #4
0
 public void LoadFromFile()
 {
     var tile = new TemplateTile(
         "test",
         new FileTemplate("a.htm"),
         null
         );
     Assert.That(tile.Template.Evaluate(new TagModel(new object())), Is.EqualTo(File.ReadAllText("a.htm")));
 }
 public void HandNestedIncludeWithParentDirs()
 {
     ITile a = new TemplateTile("a", _factory.Handle("Home/Index.htm",true), new List<TileAttribute>());
     var result = a.Render(new TagModel(new Dictionary<string, string> { { "Message", "Test" } }));
     string expected = File.ReadAllText("expected_insert_template.htm");
     result = CleanUp(result);
     expected = CleanUp(expected);
     Assert.That(result, Is.EqualTo(expected));
 }
        public void LoadFromFile()
        {
            var tile = new TemplateTile(
                "test",
                new FileTemplate("a.htm"),
                null
                );

            Assert.That(tile.Template.Evaluate(new TagModel(new object())), Is.EqualTo(File.ReadAllText("a.htm")));
        }
Beispiel #7
0
        public void TestCache()
        {
            var ts = new TilesSet();
            ITile a = new TemplateTile("a", _factory.Handle("a.htm",true), new List<TileAttribute>());
            ITile b = new TemplateTile("b", _factory.Handle("b.htm",true), new List<TileAttribute>());

            ts.Map.AddTile(a);
            ts.Map.AddTile(b);

            Assert.That(ts["a"], Is.SameAs(a));
            Assert.That(ts["b"], Is.SameAs(b));
        }
Beispiel #8
0
        public void HandNestedIncludeWithParentDirs()
        {
            ITile a      = new TemplateTile("a", _factory.Handle("Home/Index.htm", true), new List <TileAttribute>());
            var   result = a.Render(new TagModel(new Dictionary <string, string> {
                { "Message", "Test" }
            }));
            string expected = File.ReadAllText("expected_insert_template.htm");

            result   = CleanUp(result);
            expected = CleanUp(expected);
            Assert.That(result, Is.EqualTo(expected));
        }
Beispiel #9
0
        public void TestCache()
        {
            var   ts = new TilesSet();
            ITile a  = new TemplateTile("a", _factory.Handle("a.htm", true), new List <TileAttribute>());
            ITile b  = new TemplateTile("b", _factory.Handle("b.htm", true), new List <TileAttribute>());

            ts.Map.AddTile(a);
            ts.Map.AddTile(b);

            Assert.That(ts["a"], Is.SameAs(a));
            Assert.That(ts["b"], Is.SameAs(b));
        }
Beispiel #10
0
        public void HandNestedIncludeWithPrefixDirs()
        {
            var   template = new ResourceTemplate(_lib, new FileBasedResourceLocator("Views"), new FileLocatorFactory(), "Home/Index.htm");
            ITile a        = new TemplateTile("a", template, new List <TileAttribute>());
            var   result   = a.Render(new TagModel(new Dictionary <string, string> {
                { "Message", "Test" }
            }));
            string expected = File.ReadAllText("expected_insert_template.htm");

            result   = CleanUp(result);
            expected = CleanUp("VIEWS" + expected);
            Assert.That(result, Is.EqualTo(expected));
        }
Beispiel #11
0
 public void SetUp()
 {
     tile = new TemplateTile(
         "test",
         new FileTemplate("b.htm"),
         new List <TileAttribute>()
         );
     model = new TagModel(new Hashtable {
         { "some", new Hashtable {
               { "a", "b" }
           } }
     });
 }
Beispiel #12
0
 public override ITile GetView(string view)
 {
     view = PostFixName(view);
     lock (_pages)
     {
         if (!_pages.Contains(view))
         {
             var template = _factory.Handle(view, true);
             var tile = new TemplateTile(view, template, null);
             _pages.AddTile(tile);
         }
     }
     return _pages[view];
 }
Beispiel #13
0
 public override ITile GetView(string view)
 {
     view = PostFixName(view);
     lock (_pages)
     {
         if (!_pages.Contains(view))
         {
             var template = _factory.Handle(view, true);
             var tile     = new TemplateTile(view, template, null);
             _pages.AddTile(tile);
         }
     }
     return(_pages[view]);
 }
Beispiel #14
0
        public void TestSetTiles()
        {
            var           set  = new TilesSet();
            IList <ITile> list = new List <ITile>();
            ITile         a    = new TemplateTile("a", _factory.Handle("a.htm", true), new List <TileAttribute>());
            ITile         b    = new TemplateTile("b", _factory.Handle("b.htm", true), new List <TileAttribute>());
            ITile         c    = new TemplateTile("c", _factory.Handle("c.htm", true), new List <TileAttribute>());

            list.Add(b);
            list.Add(c);

            set.Map.AddTile(a);
            Assert.IsTrue(set.Contains("a"));
            Assert.IsFalse(set.Contains("b"));
            Assert.IsFalse(set.Contains("c"));
            set.SetTiles(list);
            Assert.IsFalse(set.Contains("a"));
            Assert.IsTrue(set.Contains("b"));
            Assert.IsTrue(set.Contains("c"));
        }
Beispiel #15
0
 public void TearDown()
 {
     tile = null;
 }
Beispiel #16
0
        public void TestSetTiles()
        {
            var set = new TilesSet();
            IList<ITile> list = new List<ITile>();
            ITile a = new TemplateTile("a", _factory.Handle("a.htm",true), new List<TileAttribute>());
            ITile b = new TemplateTile("b", _factory.Handle("b.htm",true), new List<TileAttribute>());
            ITile c = new TemplateTile("c", _factory.Handle("c.htm",true), new List<TileAttribute>());
            list.Add(b);
            list.Add(c);

            set.Map.AddTile(a);
            Assert.IsTrue(set.Contains("a"));
            Assert.IsFalse(set.Contains("b"));
            Assert.IsFalse(set.Contains("c"));
            set.SetTiles(list);
            Assert.IsFalse(set.Contains("a"));
            Assert.IsTrue(set.Contains("b"));
            Assert.IsTrue(set.Contains("c"));
        }
Beispiel #17
0
 public void HandNestedIncludeWithPrefixDirs()
 {
     var template = new ResourceTemplate(_lib,new FileBasedResourceLocator("Views"), new FileLocatorFactory(), "Home/Index.htm");
     ITile a = new TemplateTile("a", template, new List<TileAttribute>());
     var result = a.Render(new TagModel(new Dictionary<string, string> { { "Message", "Test" } }));
     string expected = File.ReadAllText("expected_insert_template.htm");
     result = CleanUp(result);
     expected = CleanUp("VIEWS" + expected);
     Assert.That(result, Is.EqualTo(expected));
 }
 public void SetUp()
 {
     tile = new TemplateTile(
         "test",
         new FileTemplate("b.htm"),
         new List<TileAttribute>()
         );
     model = new TagModel(new Hashtable { { "some", new Hashtable { { "a", "b" } } } });
 }
 public void TearDown()
 {
     tile = null;
 }