|
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.
|