From: <fab...@us...> - 2011-04-04 18:28:37
|
Revision: 5606 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5606&view=rev Author: fabiomaulo Date: 2011-04-04 18:28:31 +0000 (Mon, 04 Apr 2011) Log Message: ----------- JoinMapper done Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Mapping/ByCode/Impl/JoinMapper.cs trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappersTests/JoinMapperTests.cs Modified: trunk/nhibernate/src/NHibernate/Mapping/ByCode/Impl/JoinMapper.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Mapping/ByCode/Impl/JoinMapper.cs 2011-04-04 18:22:58 UTC (rev 5605) +++ trunk/nhibernate/src/NHibernate/Mapping/ByCode/Impl/JoinMapper.cs 2011-04-04 18:28:31 UTC (rev 5606) @@ -1,4 +1,5 @@ using System; +using System.Linq; using NHibernate.Cfg.MappingSchema; namespace NHibernate.Mapping.ByCode.Impl @@ -56,6 +57,12 @@ protected override void AddProperty(object property) { + if (property == null) + { + throw new ArgumentNullException("property"); + } + var toAdd = new[] { property }; + hbmJoin.Items = hbmJoin.Items == null ? toAdd : hbmJoin.Items.Concat(toAdd).ToArray(); } public void Loader(string namedQueryReference) Modified: trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappersTests/JoinMapperTests.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappersTests/JoinMapperTests.cs 2011-04-04 18:22:58 UTC (rev 5605) +++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappersTests/JoinMapperTests.cs 2011-04-04 18:28:31 UTC (rev 5606) @@ -214,5 +214,17 @@ firstCallInstance.Should().Be.SameInstanceAs(secondCallInstance); } + + [Test] + public void WhenAddPropertyThenAddItem() + { + var mapdoc = new HbmMapping(); + var hbmJoin = new HbmJoin(); + var mapper = new JoinMapper(typeof(MyClass), "AA", hbmJoin, mapdoc); + + mapper.Property(For<MyClass>.Property(mc => mc.Something), x => { }); + + hbmJoin.Properties.Should().Have.Count.EqualTo(1); + } } } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |