public void TilesShouldReturnAllTilesInMap() { var map = new TilesMap(); Assert.That(map.Tiles.Count, Is.EqualTo(0)); map.AddTile(new MockTile("a")); Assert.That(map.Tiles.Count, Is.EqualTo(1)); map.AddTile(new MockTile("b")); Assert.That(map.Tiles.Count, Is.EqualTo(2)); }
public void SameTileShouldBeReturned() { var ts = new TilesMap(); ITile a = new MockTile("a"); ITile b = new MockTile("b"); ts.AddTile(a); ts.AddTile(b); Assert.That(ts.Get("a"), Is.SameAs(a)); Assert.That(ts.Get("b"), Is.SameAs(b)); }
public void TestCache() { var ts = new TilesMap(); ITile a = new MockTile("a"); ITile b = new MockTile("b"); ts.AddTile(a); ts.AddTile(b); Assert.That(ts.Get("a"), Is.SameAs(a)); Assert.That(ts.Get("b"), Is.SameAs(b)); }
public void SetUp() { _lib = new TagLib(); _lib.Register(new Tags.Tiles()); _lib.Register(new Sharp()); _factory = new FileLocatorFactory().CloneForTagLib(_lib) as FileLocatorFactory; new TilesSet(); _map = new TilesMap(); _data = new Hashtable(); _model = new TagModel(_data); _nestedAttributes = new AttributeSet( "nested", new TileAttribute("aAttribute", new StringTile("aAttributeValue")) ); _map.AddTile(new TemplateTile("fileWithAttributes", _factory.Handle("filewithtileattributes.htm", true), _nestedAttributes)); _attributes = new AttributeSet( "main", new TileAttribute("simple", new StringTile("simpleValue")), new TileAttribute("file", new TemplateTile(null, _factory.Handle("a.htm", true), null)), new TileAttribute("fileWithVars", new TemplateTile(null, _factory.Handle("b.htm", true), null)), new TileAttribute("fileWithTilesAttributes", new TileReference("fileWithAttributes", _map)) ); _model.Decorate().With(_attributes); _data["simpleAsProperty"] = "simple"; _data["some"] = new Hashtable { { "a", "AA" } }; }
public void AnExceptionShouldBeThrownWhenEnteringWithTheSameName() { var ts = new TilesMap(); ITile a = new MockTile("a"); ITile b = new MockTile("a"); ts.AddTile(a); try { ts.AddTile(b); Assert.Fail("Expected exception"); } catch (TileException Te) { Assert.That(Te.Message, Is.EqualTo(TileException.DoubleDefinition("a").Message)); } }
public void Decorate() { foreach (ITileEntry tileEntry in _config.Entries) { ITile tile = ConstructTile(tileEntry); _map.AddTile(tile); } }
public void FlattenShouldBeDoneLazilyToCopeWithNotYetDefinedDefinitions() { var map = new TilesMap(); var firstSet = new AttributeSet("TILE", new TileAttribute("new", new StringTile("1"))); var parentTile = new TileReference("reference", map); firstSet.MergeTileLazy(parentTile); map.AddTile(new TemplateTile("reference", new FileTemplate("a.htm"), new AttributeSet("PARENT", new TileAttribute("parent", new StringTile("2"))))); Assert.That(firstSet["parent"].Value.Render(new TagModel(null)), Is.EqualTo("2")); }
public void TestContains() { var ts = new TilesMap(); ITile a = new MockTile("a"); Assert.That(ts.Contains("a"), Is.False); ts.AddTile(a); Assert.That(ts.Contains("a"), Is.True); }
public void WhenTheTileIsAvailableTheTileShouldBeUsed() { var source = new MockTile("name"); var map = new TilesMap(); map.AddTile(source); var tile = new TileReference(source.Name, map); tile.GuardInit(); Assert.That(tile.Tile, Is.SameAs(source)); }
public void WhenTheTileIsAvailableTheTileShouldBeUsedAndNotTheFallBack() { var fallBack = new StringTile("val"); var source = new MockTile("name"); var map = new TilesMap(); map.AddTile(source); var tile = new TileReference(source.Name, map, fallBack); tile.GuardInit(); Assert.That(tile.Tile, Is.SameAs(source)); }
public void TheRenderingShouldBeDelegatedToTheReferenceTileInCase() { var model = new TagModel(new object()); var fallBack = new StringTile("val"); var source = new MockTile("name"); var map = new TilesMap(); map.AddTile(source); var tile = new TileReference(source.Name, map, fallBack); tile.GuardInit(); Assert.That(fallBack.Render(model), Is.Not.EqualTo((source.Render(model))), "Precondition"); Assert.That(tile.Render(model), Is.EqualTo((source.Render(model)))); }
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]); }
public void SetUp() { _lib = new TagLib(); _lib.Register(new Tags.Tiles()); _lib.Register(new Sharp()); _factory = new FileLocatorFactory().CloneForTagLib(_lib) as FileLocatorFactory; _map = new TilesMap(); _data = new Hashtable(); _model = new TagModel(_data); _nestedAttributes = new AttributeSet( "nested", new TileAttribute("aAttribute", new StringTile("aAttributeValue")) ); _map.AddTile(new TemplateTile("fileWithAttributes", _factory.Handle("filewithtileattributes.htm", true), _nestedAttributes)); _attributes = new AttributeSet( "main", new TileAttribute("simple", new StringTile("simpleValue")), new TileAttribute("file", new TemplateTile(null, _factory.Handle("a.htm", true), null)), new TileAttribute("fileWithVars", new TemplateTile(null, _factory.Handle("b.htm",true), null)), new TileAttribute("fileWithTilesAttributes", new TileReference("fileWithAttributes", _map)) ); _model.Decorate().With(_attributes); _data["simpleAsProperty"] = "simple"; _data["some"] = new Hashtable {{"a", "AA"}}; }