|
From: <fab...@us...> - 2009-05-15 20:39:19
|
Revision: 4319
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=4319&view=rev
Author: fabiomaulo
Date: 2009-05-15 20:39:11 +0000 (Fri, 15 May 2009)
Log Message:
-----------
Fixed NH-1343 (by the new parser)
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/Mappings.hbm.xml
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/OrderLine.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/Product.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/ProductFixture.cs
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/Mappings.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/Mappings.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/Mappings.hbm.xml 2009-05-15 20:39:11 UTC (rev 4319)
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.NHSpecificTest.NH1343">
+
+ <class name="OrderLine">
+ <id name ="Id">
+ <generator class="native" />
+ </id>
+
+ <many-to-one name="Product" class="Product" column="ProductID" />
+
+ <property name="Description"/>
+ </class>
+
+ <class name="Product">
+ <id name ="Id">
+ <generator class="native" />
+ </id>
+ <property name="Description"/>
+ </class>
+
+ <query name="GetLinesForProduct">
+ from OrderLine ol
+ where Product = :product
+ </query>
+
+ <query name="GetLinesForProductWithAlias">
+ from OrderLine ol
+ where ol.Product = :product
+ </query>
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/OrderLine.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/OrderLine.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/OrderLine.cs 2009-05-15 20:39:11 UTC (rev 4319)
@@ -0,0 +1,19 @@
+namespace NHibernate.Test.NHSpecificTest.NH1343
+{
+ public class OrderLine
+ {
+ protected OrderLine() {}
+
+ public OrderLine(string description, Product product)
+ {
+ Description = description;
+ Product = product;
+ }
+
+ public virtual int Id { get; private set; }
+
+ public virtual string Description { get; set; }
+
+ public virtual Product Product { get; set; }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/Product.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/Product.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/Product.cs 2009-05-15 20:39:11 UTC (rev 4319)
@@ -0,0 +1,16 @@
+namespace NHibernate.Test.NHSpecificTest.NH1343
+{
+ public class Product
+ {
+ protected Product() {}
+
+ public Product(string description)
+ {
+ Description = description;
+ }
+
+ public virtual int Id { get; set; }
+
+ public virtual string Description { get; set; }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/ProductFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/ProductFixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1343/ProductFixture.cs 2009-05-15 20:39:11 UTC (rev 4319)
@@ -0,0 +1,57 @@
+using System.Collections.Generic;
+using NUnit.Framework;
+
+namespace NHibernate.Test.NHSpecificTest.NH1343
+{
+ [TestFixture]
+ public class ProductFixture : BugTestCase
+ {
+ protected override void OnTearDown()
+ {
+ using (ISession session = OpenSession())
+ {
+ session.Delete("from OrderLine");
+ session.Delete("from Product");
+ session.Flush();
+ }
+ }
+
+ [Test]
+ public void ProductQueryPassesParsingButFails()
+ {
+ Product product1 = new Product("product1");
+ OrderLine orderLine = new OrderLine("1", product1);
+
+ using (ISession session = OpenSession())
+ {
+ session.Save(product1);
+ session.Save(orderLine);
+ session.Flush();
+
+ IQuery query = session.GetNamedQuery("GetLinesForProduct");
+ query.SetParameter("product", product1);
+ IList<OrderLine> list = query.List<OrderLine>();
+ Assert.AreEqual(1, list.Count);
+ }
+ }
+
+ [Test]
+ public void ProductQueryPassesAndExecutesRightIfPuttingAlias()
+ {
+ Product product1 = new Product("product1");
+ OrderLine orderLine = new OrderLine("1", product1);
+
+ using (ISession session = OpenSession())
+ {
+ session.Save(product1);
+ session.Save(orderLine);
+ session.Flush();
+
+ IQuery query = session.GetNamedQuery("GetLinesForProductWithAlias");
+ query.SetParameter("product", product1);
+ IList<OrderLine> list = query.List<OrderLine>();
+ Assert.AreEqual(1, list.Count);
+ }
+ }
+ }
+}
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-05-15 20:28:58 UTC (rev 4318)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-05-15 20:39:11 UTC (rev 4319)
@@ -335,6 +335,9 @@
<Compile Include="NHSpecificTest\NH1264\Name.cs" />
<Compile Include="NHSpecificTest\NH1264\Passenger.cs" />
<Compile Include="NHSpecificTest\NH1264\Reservation.cs" />
+ <Compile Include="NHSpecificTest\NH1343\OrderLine.cs" />
+ <Compile Include="NHSpecificTest\NH1343\Product.cs" />
+ <Compile Include="NHSpecificTest\NH1343\ProductFixture.cs" />
<Compile Include="NHSpecificTest\NH1388\Fixture.cs" />
<Compile Include="NHSpecificTest\NH1574\Principal.cs" />
<Compile Include="NHSpecificTest\NH1574\SpecializedPrincipal.cs" />
@@ -1791,6 +1794,7 @@
<EmbeddedResource Include="BulkManipulation\SimpleClass.hbm.xml" />
<EmbeddedResource Include="Ado\VerySimple.hbm.xml" />
<Content Include="DynamicEntity\package.html" />
+ <EmbeddedResource Include="NHSpecificTest\NH1343\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH1264\Passenger.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH1264\Reservation.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH1775\Member.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|