public void Ctor_Predicate_SetsPredicate()
        {
            Predicate <BsonMemberMap> subject = m => true;

            var target = new IdAsStringWithObjectIdAsBsonTypeConvention(subject);

            Assert.Same(subject, target.IdMemberMapFilter);
        }
        public void Apply_MapWithStringId_NoIdGenerator()
        {
            var target  = new IdAsStringWithObjectIdAsBsonTypeConvention();
            var subject = new BsonClassMap <SampleWithIntId>(cm => cm.AutoMap()).GetMemberMap("Id");

            target.Apply(subject);

            Assert.Null(subject.IdGenerator);
        }
        public void Apply_MapWithStringId_LeavesSerializer()
        {
            var target  = new IdAsStringWithObjectIdAsBsonTypeConvention();
            var subject = new BsonClassMap <SampleWithIntId>(cm => cm.AutoMap()).GetMemberMap("Id");

            target.Apply(subject);

            Assert.IsNotType <StringSerializer>(subject.GetSerializer());
        }
        public void Ctor_NoPredicate_UsesDefaultPredicate()
        {
            var target = new IdAsStringWithObjectIdAsBsonTypeConvention();

            Assert.Same(IdAsStringWithObjectIdAsBsonTypeConvention.StringIdIdMemberFilter, target.IdMemberMapFilter);
        }