From: <te...@us...> - 2009-02-28 19:31:59
|
Revision: 4100 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=4100&view=rev Author: tehlike Date: 2009-02-28 19:31:56 +0000 (Sat, 28 Feb 2009) Log Message: ----------- Fixing problem with accessing Entity method when access strategy is field-camelcase. Fix for NH-1689 Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Proxy/Poco/BasicLazyInitializer.cs trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj Added Paths: ----------- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/DomainClass.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/Mappings.hbm.xml trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/SampleTest.cs Modified: trunk/nhibernate/src/NHibernate/Proxy/Poco/BasicLazyInitializer.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Proxy/Poco/BasicLazyInitializer.cs 2009-02-24 19:34:25 UTC (rev 4099) +++ trunk/nhibernate/src/NHibernate/Proxy/Poco/BasicLazyInitializer.cs 2009-02-28 19:31:56 UTC (rev 4100) @@ -92,7 +92,7 @@ { return IdentityEqualityComparer.Equals(args[0], proxy); } - else if (method.Equals(setIdentifierMethod)) + else if (setIdentifierMethod!=null&&method.Equals(setIdentifierMethod)) { Initialize(); Identifier = args[0]; Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/DomainClass.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/DomainClass.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/DomainClass.cs 2009-02-28 19:31:56 UTC (rev 4100) @@ -0,0 +1,22 @@ + + +namespace NHibernate.Test.NHSpecificTest.NH1689 +{ + using System.Collections.Generic; + + public class DomainClass + { + private int id; + + public virtual int Id + { + get { return id; } + set { id = value; } + } + + public virtual IList<TargetType> GetListOfTargetType<TargetType>(string someArg) + { + return new List<TargetType>(); + } + } +} Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/Mappings.hbm.xml =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/Mappings.hbm.xml (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/Mappings.hbm.xml 2009-02-28 19:31:56 UTC (rev 4100) @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="NHibernate.Test" + namespace="NHibernate.Test.NHSpecificTest.NH1689" default-access="field.camelcase"> + <class name="DomainClass"> + <id name="Id"> + <generator class="assigned" /> + </id> + </class> +</hibernate-mapping> \ No newline at end of file Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/SampleTest.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/SampleTest.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1689/SampleTest.cs 2009-02-28 19:31:56 UTC (rev 4100) @@ -0,0 +1,47 @@ +namespace NHibernate.Test.NHSpecificTest.NH1689 +{ + using System.Collections.Generic; + using Dialect; + using NUnit.Framework; + + [TestFixture,Ignore] + public class SampleTest : BugTestCase + { + protected override void OnSetUp() + { + base.OnSetUp(); + using (ISession session = this.OpenSession()) + { + DomainClass entity = new DomainClass(); + entity.Id = 1; + session.Save(entity); + session.Flush(); + session.Evict(entity); + } + } + + protected override void OnTearDown() + { + base.OnTearDown(); + using (ISession session = this.OpenSession()) + { + string hql = "from System.Object"; + session.Delete(hql); + session.Flush(); + } + } + + [Test] + public void ShouldBeAbleToCallGenericMethod() + { + using (ISession session = this.OpenSession()) + { + DomainClass entity = session.Load<DomainClass>(1); + + IList<string> inputStrings = entity.GetListOfTargetType<string>("arg"); + Assert.That(inputStrings.Count == 0); + } + } + } + +} Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-02-24 19:34:25 UTC (rev 4099) +++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-02-28 19:31:56 UTC (rev 4100) @@ -632,6 +632,8 @@ <Compile Include="NHSpecificTest\NH1677\Fixture.cs" /> <Compile Include="NHSpecificTest\NH1679\DomainClass.cs" /> <Compile Include="NHSpecificTest\NH1679\Fixture.cs" /> + <Compile Include="NHSpecificTest\NH1689\DomainClass.cs" /> + <Compile Include="NHSpecificTest\NH1689\SampleTest.cs" /> <Compile Include="NHSpecificTest\NH280\Fixture.cs" /> <Compile Include="NHSpecificTest\NH280\Foo.cs" /> <Compile Include="NHSpecificTest\NH1018\Employee.cs" /> @@ -1666,6 +1668,7 @@ <EmbeddedResource Include="Cascade\JobBatch.hbm.xml" /> <EmbeddedResource Include="Deletetransient\Person.hbm.xml" /> <Content Include="DynamicEntity\package.html" /> + <EmbeddedResource Include="NHSpecificTest\NH1689\Mappings.hbm.xml" /> <EmbeddedResource Include="VersionTest\Db\MsSQL\SimpleVersioned.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1675\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1677\Mappings.hbm.xml" /> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |