From: <pa...@us...> - 2010-11-29 02:29:18
|
Revision: 5283 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5283&view=rev Author: patearl Date: 2010-11-29 02:29:12 +0000 (Mon, 29 Nov 2010) Log Message: ----------- Added test for component equality in Linq. (NH-2244) Also allowed VS to remove a couple useless lines from the project. Modified Paths: -------------- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj Added Paths: ----------- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/A.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/Fixture.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/Mappings.hbm.xml trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/PhoneNumber.cs Copied: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/A.cs (from rev 5280, trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2394/A.cs) =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/A.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/A.cs 2010-11-29 02:29:12 UTC (rev 5283) @@ -0,0 +1,11 @@ +using System; +using System.Collections; + +namespace NHibernate.Test.NHSpecificTest.NH2244 +{ + public class A + { + public int? Id { get; set; } + public PhoneNumber Phone { get; set; } + } +} Copied: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/Fixture.cs (from rev 5280, trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2394/Fixture.cs) =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/Fixture.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/Fixture.cs 2010-11-29 02:29:12 UTC (rev 5283) @@ -0,0 +1,51 @@ +using System; +using System.Collections.Generic; +using NHibernate.Criterion; +using NUnit.Framework; +using NHibernate.Linq; +using System.Linq; +using NHibernate.Linq.Functions; + +namespace NHibernate.Test.NHSpecificTest.NH2244 +{ + [TestFixture] + public class Fixture : BugTestCase + { + protected override void OnTearDown() + { + using (ISession s = sessions.OpenSession()) + { + s.Delete("from A"); + s.Flush(); + } + } + + [Test] + public void LinqComponentTypeEquality() + { + ISession s = OpenSession(); + try + { + s.Save(new A { Phone = new PhoneNumber(1, "555-1111") }); + s.Save(new A { Phone = new PhoneNumber(1, "555-2222") }); + s.Save(new A { Phone = new PhoneNumber(1, "555-3333") }); + s.Flush(); + } + finally + { + s.Close(); + } + + s = OpenSession(); + try + { + A item = s.Query<A>().Where(a => a.Phone == new PhoneNumber(1, "555-2222")).Single(); + Assert.AreEqual("555-2222", item.Phone.Number); + } + finally + { + s.Close(); + } + } + } +} Copied: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/Mappings.hbm.xml (from rev 5280, trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2394/Mappings.hbm.xml) =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/Mappings.hbm.xml (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/Mappings.hbm.xml 2010-11-29 02:29:12 UTC (rev 5283) @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8" ?> +<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="NHibernate.Test" namespace="NHibernate.Test.NHSpecificTest.NH2244"> + <class name="A" lazy="false"> + <id name="Id" column="id" unsaved-value="null"> + <generator class="native" /> + </id> + <component name="Phone" class="PhoneNumber"> + <property name="CountryCode"/> + <property name="Number"/> + </component> + </class> +</hibernate-mapping> Copied: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/PhoneNumber.cs (from rev 5280, trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2394/PhoneNumber.cs) =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/PhoneNumber.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2244/PhoneNumber.cs 2010-11-29 02:29:12 UTC (rev 5283) @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace NHibernate.Test.NHSpecificTest.NH2244 +{ + public class PhoneNumber + { + public PhoneNumber() + { + + } + + public PhoneNumber(int countryCode, string number) + { + CountryCode = countryCode; + Number = number; + } + + public int CountryCode { get; set; } + public string Number { get; set; } + } +} Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2010-11-28 21:02:39 UTC (rev 5282) +++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2010-11-29 02:29:12 UTC (rev 5283) @@ -494,6 +494,9 @@ <Compile Include="NHSpecificTest\NH2202\Model.cs" /> <Compile Include="NHSpecificTest\NH2224\Domain.cs" /> <Compile Include="NHSpecificTest\NH2224\Fixture.cs" /> + <Compile Include="NHSpecificTest\NH2244\A.cs" /> + <Compile Include="NHSpecificTest\NH2244\Fixture.cs" /> + <Compile Include="NHSpecificTest\NH2244\PhoneNumber.cs" /> <Compile Include="NHSpecificTest\NH2245\Fixture.cs" /> <Compile Include="NHSpecificTest\NH2245\Model.cs" /> <Compile Include="NHSpecificTest\NH2266\Domain.cs" /> @@ -2334,6 +2337,7 @@ <EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" /> </ItemGroup> <ItemGroup> + <EmbeddedResource Include="NHSpecificTest\NH2244\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH2394\Mappings.hbm.xml" /> <EmbeddedResource Include="DynamicEntity\Interceptor\Customer.hbm.xml" /> <EmbeddedResource Include="Any\Person.hbm.xml" /> @@ -2711,8 +2715,6 @@ <EmbeddedResource Include="DynamicEntity\Tuplizer\Customer.hbm.xml" /> </ItemGroup> <ItemGroup> - <Folder Include="NHSpecificTest\NH2392" /> - <Folder Include="NHSpecificTest\NH2409" /> <Folder Include="Properties\" /> </ItemGroup> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |