public void Should_build_default_builder()
            {
                var registry = new TestConventionRegistry();

                registry.DefaultBuilder.Build(new UIComponentContext(_boolExpr.ToAccessor(), new TestModel(), null)).ToString()
                    .ShouldEqual(new HtmlTag("input").ToString());
            }
            public void Should_build_tag_builder()
            {
                var registry = new TestConventionRegistry();

                registry.TagBuilders.Count().ShouldEqual(1);

                registry.TagBuilders.ToList()[0].Build(new UIComponentContext(_boolExpr.ToAccessor(), new TestModel(), null)).ToString().ShouldEqual(new HtmlTag("a").ToString());
            }
            public void Should_build_tag_modifier_conditions()
            {
                var registry = new TestConventionRegistry();

                registry.TagModifiers.Count().ShouldEqual(3);

                registry.TagModifiers.ToList()[2].ShouldModify(new UIComponentContext(_boolExpr.ToAccessor(), new TestModel(), null)).ShouldBeTrue();
                registry.TagModifiers.ToList()[2].ShouldModify(new UIComponentContext(_stringExpr.ToAccessor(), new TestModel(), null)).ShouldBeFalse();
            }
            public void Should_build_tag_modifier()
            {
                var registry = new TestConventionRegistry();

                registry.TagModifiers.Count().ShouldEqual(3);

                var htmlTag = new HtmlTag("a");
                registry.TagModifiers.ToList()[2].Modify(new UIComponentContext(_boolExpr.ToAccessor(), new TestModel(), null), htmlTag);
                htmlTag.ToString().ShouldEqual(new HtmlTag("a").AddClass("test").ToString());
            }