public void Should_write_one_to_many()
        {
            var oneToMany = new OneToManyMapping();
            var oneToManyWriter = MockRepository.GenerateStub<IHbmWriter<OneToManyMapping>>();
            oneToManyWriter.Expect(x => x.Write(oneToMany)).Return(new HbmOneToMany());
            var writer = new HbmCollectionContentsWriter(oneToManyWriter, null);

            object result = writer.Write(oneToMany);
            result.ShouldBeOfType(typeof(HbmOneToMany));
        }
        public void Should_write_many_to_many()
        {
            var manyToMany = new ManyToManyMapping();
            var manyTomanyWriter = MockRepository.GenerateStub<IHbmWriter<ManyToManyMapping>>();
            manyTomanyWriter.Expect(x => x.Write(manyToMany)).Return(new HbmManyToMany());

            var writer = new HbmCollectionContentsWriter(null, manyTomanyWriter);

            object result = writer.Write(manyToMany);
            result.ShouldBeOfType(typeof(HbmManyToMany));
        }
        public void Should_return_null_when_writing_unrecognised_object_after_having_processed_a_recognised_object()
        {
            var recognisedMapping = new OneToManyMapping();
            var oneToManyWriter = MockRepository.GenerateStub<IHbmWriter<OneToManyMapping>>();
            oneToManyWriter.Expect(x => x.Write(recognisedMapping)).Return(new HbmOneToMany());
            var writer = new HbmCollectionContentsWriter(oneToManyWriter, null);

            writer.ProcessOneToMany(recognisedMapping);

            var result = writer.Write(new UnrecognisedCollectionContents());
            result.ShouldBeNull();
        }