From: <fab...@us...> - 2010-07-21 17:19:57
|
Revision: 5031 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5031&view=rev Author: fabiomaulo Date: 2010-07-21 17:19:49 +0000 (Wed, 21 Jul 2010) Log Message: ----------- Fix NH-2243 Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/ClassBinder.cs trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj Added Paths: ----------- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Fixture.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Mappings.hbm.xml trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Person.cs Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/ClassBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/ClassBinder.cs 2010-07-21 14:33:45 UTC (rev 5030) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/ClassBinder.cs 2010-07-21 17:19:49 UTC (rev 5031) @@ -200,6 +200,7 @@ // KEY SimpleValue key = new DependantValue(table, persistentClass.Identifier); + key.ForeignKeyName = joinMapping.key.foreignkey; join.Key = key; key.IsCascadeDeleteEnabled = joinMapping.key.ondelete == HbmOndelete.Cascade; new ValuePropertyBinder(key, Mappings).BindSimpleValue(joinMapping.key, persistentClass.EntityName, false); Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Fixture.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Fixture.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Fixture.cs 2010-07-21 17:19:49 UTC (rev 5031) @@ -0,0 +1,27 @@ +using System.IO; +using System.Reflection; +using System.Text; +using NHibernate.Cfg; +using NHibernate.Tool.hbm2ddl; +using NUnit.Framework; +using SharpTestsEx; + +namespace NHibernate.Test.NHSpecificTest.NH2243 +{ + public class Fixture + { + [Test] + public void ShouldCreateSchemaWithDefaultClause() + { + var script = new StringBuilder(); + const string mapping = "NHibernate.Test.NHSpecificTest.NH2243.Mappings.hbm.xml"; + + Configuration cfg = TestConfigurationHelper.GetDefaultConfiguration(); + using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(mapping)) + cfg.AddInputStream(stream); + new SchemaExport(cfg).Execute(s => script.AppendLine(s), false, false); + + script.ToString().Should().Contain("MyNameForFK"); + } + } +} \ No newline at end of file Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Mappings.hbm.xml =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Mappings.hbm.xml (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Mappings.hbm.xml 2010-07-21 17:19:49 UTC (rev 5031) @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8" ?> +<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" + assembly="NHibernate.Test" + namespace="NHibernate.Test.NHSpecificTest.NH2243"> + + <class name="Person" table="Person1"> + <id name="Id"> + <generator class="assigned" /> + </id> + <property name="Name"/> + <join table="Person2"> + <key column="PersonId" foreign-key="MyNameForFK" /> + <property name="Address"/> + </join> + </class> +</hibernate-mapping> Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Person.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Person.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2243/Person.cs 2010-07-21 17:19:49 UTC (rev 5031) @@ -0,0 +1,9 @@ +namespace NHibernate.Test.NHSpecificTest.NH2243 +{ + public class Person + { + public virtual int Id { get; set; } + public virtual string Name { get; set; } + public virtual string Address { get; set; } + } +} \ No newline at end of file Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2010-07-21 14:33:45 UTC (rev 5030) +++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2010-07-21 17:19:49 UTC (rev 5031) @@ -758,6 +758,8 @@ <Compile Include="NHSpecificTest\NH2242\EscapedFormulaDomainClass.cs" /> <Compile Include="NHSpecificTest\NH2242\FormulaTest.cs" /> <Compile Include="NHSpecificTest\NH2242\UnescapedFormulaDomainClass.cs" /> + <Compile Include="NHSpecificTest\NH2243\Fixture.cs" /> + <Compile Include="NHSpecificTest\NH2243\Person.cs" /> <Compile Include="NHSpecificTest\NH473\Child.cs" /> <Compile Include="NHSpecificTest\NH473\Fixture.cs" /> <Compile Include="NHSpecificTest\NH473\Parent.cs" /> @@ -2195,6 +2197,7 @@ <EmbeddedResource Include="DriverTest\SqlServerCeEntity.hbm.xml" /> <EmbeddedResource Include="CollectionTest\NullableValueTypeElementMapFixture.hbm.xml" /> <Content Include="DynamicEntity\package.html" /> + <EmbeddedResource Include="NHSpecificTest\NH2243\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1891\FormulaEscaping.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH2242\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH2234\Mappings.hbm.xml" /> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |