public void SpecifyRequirements()
        {
            Mock<ITypeMemberConventionRequirements> reqMock = new Mock<ITypeMemberConventionRequirements>();
            var target = new RandomNullableInt32Convention();

            target.SpecifyRequirements(reqMock.Object);

            reqMock.Verify(a => a.Type(x => x == typeof(System.Nullable<int>)), @"
            The SpecifyRequirements call produced a requirement that doesn't make sense for this convention.
            ");
        }
        public void Apply()
        {
            Mock<ITypePropertyConventionContext> contextMock = new Mock<ITypePropertyConventionContext>();
            var target = new RandomNullableInt32Convention();

            target.Apply(contextMock.Object);

            contextMock.Verify( a => a.SetSource<RandomNullableInt32DataSource>(), @"
            The SetSource method was not called on the TypePropertyConvenctionContext object.
            This has to happen in order for the convention to work.
            ");
        }