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