From: <te...@us...> - 2009-02-19 09:56:03
|
Revision: 4088 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=4088&view=rev Author: tehlike Date: 2009-02-19 09:55:56 +0000 (Thu, 19 Feb 2009) Log Message: ----------- Adding Tests for NH-1677 Modified Paths: -------------- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj Added Paths: ----------- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/Fixture.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/Mappings.hbm.xml Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/Fixture.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/Fixture.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/Fixture.cs 2009-02-19 09:55:56 UTC (rev 4088) @@ -0,0 +1,85 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Data; +using System.Text; +using NUnit.Framework; + +namespace NHibernate.Test.NHSpecificTest.NH1677 +{ + [TestFixture,Ignore] + public class EntityModeMapCriteria:BugTestCase + { + private const int NumberOfRecordPerEntity = 10; + private const string Entity1Name = "Entity1"; + private const string Entity1Property = "Entity1Property"; + private const string Entity2Name = "Entity2"; + private const string Entity2Property = "Entity2Property"; + private const string EntityPropertyPrefix = "Record"; + + protected override void Configure(NHibernate.Cfg.Configuration configuration) + { + base.Configure(configuration); + configuration.SetProperty("default_entity_mode", + EntityModeHelper.ToString(EntityMode.Map)); + } + + protected override void OnSetUp() + { + using (var s = OpenSession()) + { + using (var tx = s.BeginTransaction(IsolationLevel.ReadCommitted)) + { + for (int i = 0; i < NumberOfRecordPerEntity; i++) + { + var entity1 = new Hashtable(); + entity1[Entity1Property] = EntityPropertyPrefix + i; + s.SaveOrUpdate(Entity1Name, entity1); + } + + for (int i = 0; i < NumberOfRecordPerEntity; i++) + { + var entity2 = new Hashtable(); + entity2[Entity2Property] = EntityPropertyPrefix + i; + s.SaveOrUpdate(Entity2Name, entity2); + } + tx.Commit(); + } + } + } + protected override void OnTearDown() + { + using(var s=OpenSession()) + { + using(var tx=s.BeginTransaction()) + { + s.Delete(string.Format("from {0}", Entity1Name)); + tx.Commit(); + } + + } + } + [Test] + public void EntityModeMapFailsWithCriteria() + { + using (var sf = cfg.BuildSessionFactory()) + { + + using (var s = sf.OpenSession()) + { + var query = s.CreateQuery(string.Format("from {0}", Entity1Name)); + var entity1List = query.List(); + Assert.AreEqual(NumberOfRecordPerEntity, entity1List.Count); // OK, Count == 10 + } + + using (var s = sf.OpenSession()) + { + var entity1Criteria = s.CreateCriteria(Entity1Name); + var entity1List = entity1Criteria.List(); + Assert.AreEqual(NumberOfRecordPerEntity, entity1List.Count); // KO !!! Count == 20 !!! + } + } + } + } + +} Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/Mappings.hbm.xml =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/Mappings.hbm.xml (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1677/Mappings.hbm.xml 2009-02-19 09:55:56 UTC (rev 4088) @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8"?> +<hibernate-mapping xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns="urn:nhibernate-mapping-2.2"> + <class entity-name="Entity1" table="Table1"> + <id name="Id" column="Id" type="Int32"> + <generator class="native"/> + </id> + <property name="Entity1Property" column="Table1Column" type="String"/> + </class> + <class entity-name="Entity2" table="Table2"> + <id column="Id" type="Int32" name="Id"> + <generator class="native"/> + </id> + <property name="Entity2Property" column="Table2Column" type="String"/> + </class> +</hibernate-mapping> \ No newline at end of file Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-02-16 22:14:57 UTC (rev 4087) +++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-02-19 09:55:56 UTC (rev 4088) @@ -627,6 +627,7 @@ <Compile Include="NHSpecificTest\NH1643\Fixture.cs" /> <Compile Include="NHSpecificTest\NH1654\Fixture.cs" /> <Compile Include="NHSpecificTest\NH1654\Employee.cs" /> + <Compile Include="NHSpecificTest\NH1677\Fixture.cs" /> <Compile Include="NHSpecificTest\NH1679\DomainClass.cs" /> <Compile Include="NHSpecificTest\NH1679\Fixture.cs" /> <Compile Include="NHSpecificTest\NH280\Fixture.cs" /> @@ -1659,6 +1660,7 @@ <EmbeddedResource Include="Cascade\JobBatch.hbm.xml" /> <EmbeddedResource Include="Deletetransient\Person.hbm.xml" /> <Content Include="DynamicEntity\package.html" /> + <EmbeddedResource Include="NHSpecificTest\NH1677\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1679\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\Evicting\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1490\MappingsFilterAsBoolean.hbm.xml" /> @@ -1798,4 +1800,4 @@ if exist "$(ProjectDir)hibernate.cfg.xml" (copy "$(ProjectDir)hibernate.cfg.xml" "hibernate.cfg.xml") copy /y "..\..\..\NHibernate.DomainModel\ABC.hbm.xml" "ABC.hbm.xml"</PostBuildEvent> </PropertyGroup> -</Project> +</Project> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |