public void CallingPrimaryKeyReturnsCreateColumnExpression()
        {
            var collectionMock = new Mock<ICollection<IMigrationExpression>>();
            var contextMock = new Mock<IMigrationContext>();
            contextMock.Setup(x => x.Expressions).Returns(collectionMock.Object);

            var root = new CreateExpressionRoot(contextMock.Object);
            var builder = root.PrimaryKey("PK_Bacon");

            builder.ShouldBeOfType<CreateConstraintExpressionBuilder>();
            contextMock.VerifyGet(x => x.Expressions);
        }
        public void CallingPrimaryKeyAddsCreateColumnExpressionToContextWithSpecifiedNameSet()
        {
            var collectionMock = new Mock<ICollection<IMigrationExpression>>();

            var contextMock = new Mock<IMigrationContext>();
            contextMock.Setup(x => x.Expressions).Returns(collectionMock.Object);

            var root = new CreateExpressionRoot(contextMock.Object);
            root.PrimaryKey("PK_Bacon");

            collectionMock.Verify(x => x.Add(It.Is<CreateConstraintExpression>(
                e => e.Constraint.ConstraintName.Equals("PK_Bacon")
                     && e.Constraint.IsPrimaryKeyConstraint
            )));
            contextMock.VerifyGet(x => x.Expressions);
        }