public void It_Should_Serialise_To_This()
        {
            Table table = new Table("Table1");
            Column column = new Column("Column1");
            table.AddColumn(column);

            var dis = new DiscriminatorBuilder()
                .SingleConditionDiscriminator(column, Operator.Equal, new ExpressionValueImpl("5"));

            string outputXML = new EntitySetSerialisationScheme().SerialiseDiscriminator(dis);
            outputXML = XmlSqueezer.RemoveWhitespaceBetweenElements(outputXML);
            Assert.That(outputXML, Is.EqualTo(FullDiscriminatorXml));
        }
        public void It_Is_Built_Correctly()
        {
            var build = new DiscriminatorBuilder();
            ExpressionValue val = MockRepository.GenerateMock<ExpressionValue>();
            Operator op = Operator.Equal;
            IColumn column = MockRepository.GenerateMock<IColumn>(); ;
            Discriminator dis = build.SingleConditionDiscriminator(column, op, val);

            Assert.That(dis.RootGrouping, Is.Not.Null);
            Assert.That(dis.RootGrouping.Groupings, Is.Empty);
            Assert.That(dis.RootGrouping.Conditions, Has.Count(1));

            Condition condition = dis.RootGrouping.Conditions[0];
            Assert.That(condition.Column, Is.SameAs(column));
            Assert.That(condition.Operator, Is.SameAs(op));
            Assert.That(condition.ExpressionValue, Is.SameAs(val));
        }