|
From: <fab...@us...> - 2009-05-03 14:22:26
|
Revision: 4227
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=4227&view=rev
Author: fabiomaulo
Date: 2009-05-03 13:43:03 +0000 (Sun, 03 May 2009)
Log Message:
-----------
Starting port of AST tests (at least for BulkUpdates)
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BaseFixture.cs
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Animal.hbm.xml
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BooleanLiteralEntity.hbm.xml
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BulkManipulation.cs
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/EntityWithCrazyCompositeKey.hbm.xml
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/FooBarCopy.hbm.xml
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/KeyManyToOneEntity.hbm.xml
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Multi.hbm.xml
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/SimpleEntityWithAssociation.hbm.xml
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Vehicle.hbm.xml
trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Versions.hbm.xml
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Animal.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Animal.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Animal.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast"
+ default-access="field">
+
+ <class name="Animal">
+ <id name="id">
+ <generator class="native"/>
+ </id>
+ <property name="description"/>
+ <property name="bodyWeight" column="body_weight"/>
+ <many-to-one name="mother" column="mother_id"/>
+ <many-to-one name="father" column="father_id"/>
+ <many-to-one name="zoo" column="zoo_id"/>
+ <property name="serialNumber"/>
+ <set name="offspring" order-by="father_id">
+ <key column="mother_id"/>
+ <one-to-many class="Animal"/>
+ </set>
+ <joined-subclass name="Reptile">
+ <key column="animal"/>
+ <property name="bodyTemperature"/>
+ <joined-subclass name="Lizard">
+ <key column="reptile"/>
+ </joined-subclass>
+ </joined-subclass>
+ <joined-subclass name="Mammal">
+ <key column="animal"/>
+ <property name="pregnant"/>
+ <property name="birthdate" type="date"/>
+ <joined-subclass name="DomesticAnimal">
+ <key column="mammal"/>
+ <many-to-one name="owner"/>
+ <joined-subclass name="Cat">
+ <key column="mammal"/>
+ </joined-subclass>
+ <joined-subclass name="Dog">
+ <key column="mammal"/>
+ </joined-subclass>
+ </joined-subclass>
+ <joined-subclass name="Human">
+ <key column="mammal"/>
+ <component name="name">
+ <property name="first" column="name_first"/>
+ <property name="initial" column="name_initial"/>
+ <property name="last" column="name_last"/>
+ </component>
+ <property name="nickName"/>
+ <property name="height"/>
+
+ <property name="intValue"/>
+ <property name="floatValue"/>
+ <property name="bigDecimalValue"/>
+ <property name="bigIntegerValue"/>
+
+ <bag name="friends">
+ <key column="human1"/>
+ <many-to-many column="human2" class="Human"/>
+ </bag>
+ <map name="family">
+ <key column="human1"/>
+ <map-key column="relationship" type="string"/>
+ <many-to-many column="human2" class="Human"/>
+ </map>
+ <bag name="pets" inverse="true">
+ <key column="owner"/>
+ <one-to-many class="DomesticAnimal"/>
+ </bag>
+ <set name="nickNames" lazy="false" table="human_nick_names" sort="natural">
+ <key column="human"/>
+ <element column="nick_name" type="string" not-null="true"/>
+ </set>
+ <map name="addresses" table="addresses">
+ <key column="human"/>
+ <map-key type="string" column="type"/>
+ <composite-element class="Address">
+ <property name="street"/>
+ <property name="city"/>
+ <property name="postalCode"/>
+ <property name="country"/>
+ <many-to-one name="stateProvince" column="state_prov_id" class="StateProvince"/>
+ </composite-element>
+ </map>
+ </joined-subclass>
+ </joined-subclass>
+ </class>
+
+ <class name="User" table="`User`">
+ <id name="id">
+ <generator class="foreign">
+ <param name="property">human</param>
+ </generator>
+ </id>
+ <property name="userName"/>
+ <one-to-one name="human" constrained="true"/>
+ <list name="permissions">
+ <key column="userId"/>
+ <list-index column="permissionId"/>
+ <element type="string" column="permissionName"/>
+ </list>
+ </class>
+
+ <class name="Zoo" discriminator-value="Z">
+ <id name="id">
+ <generator class="native"/>
+ </id>
+ <discriminator column="zooType" type="character"/>
+ <property name="name" type="string"/>
+ <property name="classification" type="org.hibernate.test.hql.ClassificationType"/>
+ <map name="mammals">
+ <key column="mammalZoo_id"/>
+ <index type="string" column="name"/>
+ <one-to-many class="Mammal"/>
+ </map>
+ <map name="animals" inverse="true">
+ <key column="zoo_id"/>
+ <index type="string" column="serialNumber"/>
+ <one-to-many class="Animal"/>
+ </map>
+ <component name="address" class="Address">
+ <property name="street"/>
+ <property name="city"/>
+ <property name="postalCode"/>
+ <property name="country"/>
+ <many-to-one name="stateProvince" column="state_prov_id" class="StateProvince"/>
+ </component>
+ <subclass name="PettingZoo" discriminator-value="P"/>
+ </class>
+
+ <class name="StateProvince">
+ <id name="id">
+ <generator class="native"/>
+ </id>
+ <property name="name"/>
+ <property name="isoCode"/>
+ </class>
+
+ <class name="Joiner">
+ <id name="id">
+ <generator class="native"/>
+ </id>
+ <property name="name"/>
+ <join table="JOINED">
+ <key column="ID"/>
+ <property name="joinedName"/>
+ </join>
+ </class>
+
+</hibernate-mapping>
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BaseFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BaseFixture.cs 2009-05-03 12:37:55 UTC (rev 4226)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BaseFixture.cs 2009-05-03 13:43:03 UTC (rev 4227)
@@ -2,6 +2,7 @@
using NHibernate.Hql.Ast.ANTLR;
using System.Collections.Generic;
using NHibernate.Util;
+using NHibernate.Hql.Classic;
namespace NHibernate.Test.HQL.Ast
{
@@ -11,7 +12,7 @@
protected override bool AppliesTo(Engine.ISessionFactoryImplementor factory)
{
- return sessions.Settings.QueryTranslatorFactory is ASTQueryTranslatorFactory;
+ return !(sessions.Settings.QueryTranslatorFactory is ClassicQueryTranslatorFactory);
}
#region Overrides of TestCase
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BooleanLiteralEntity.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BooleanLiteralEntity.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BooleanLiteralEntity.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast">
+
+ <class name="BooleanLiteralEntity">
+ <id name="Id">
+ <generator class="native"/>
+ </id>
+ <property name="YesNoBoolean" column="Y_N_BOOL" type="yes_no"/>
+ <property name="TrueFalseBoolean" column="T_F_BOOL" type="true_false"/>
+ <property name="ZeroOneBoolean" column="NUM_BOOL" type="boolean"/>
+ </class>
+
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BulkManipulation.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BulkManipulation.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/BulkManipulation.cs 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,15 @@
+namespace NHibernate.Test.HQL.Ast
+{
+ public class BulkManipulation: BaseFixture
+ {
+ // "hql/Animal.hbm.xml",
+ // "hql/Vehicle.hbm.xml",
+ // "hql/KeyManyToOneEntity.hbm.xml",
+ // "hql/Versions.hbm.xml",
+ //"hql/FooBarCopy.hbm.xml",
+ //"legacy/Multi.hbm.xml",
+ //"hql/EntityWithCrazyCompositeKey.hbm.xml",
+ //"hql/SimpleEntityWithAssociation.hbm.xml",
+ //"hql/BooleanLiteralEntity.hbm.xml"
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/EntityWithCrazyCompositeKey.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/EntityWithCrazyCompositeKey.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/EntityWithCrazyCompositeKey.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast">
+
+ <class name="EntityWithCrazyCompositeKey">
+ <composite-id name="Id" class="CrazyCompositeKey">
+ <key-property name="Id" column="id"/>
+ <key-property name="OtherId" column="other_id"/>
+ </composite-id>
+ <property name="Name"/>
+ </class>
+
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/FooBarCopy.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/FooBarCopy.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/FooBarCopy.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast"
+ default-lazy="false">
+
+ <!-- a slightly modified copy of FooBar.hbm.xml from the legacy test package -->
+
+ <class
+ name="Foo"
+ table="`foos`"
+ proxy="FooProxy"
+ discriminator-value="F"
+ batch-size="4"
+ dynamic-insert="true"
+ dynamic-update="true"
+ select-before-update="true">
+
+ <id name="key" type="string">
+ <column name="`foo_idcolumnname123`" length="36"/>
+ <generator class="uuid.hex">
+ <param name="seperator">:</param>
+ </generator>
+ </id>
+
+ <discriminator column="`foo_subclass_1234`" type="character" force="true"/>
+ <version name="version"/>
+
+ <many-to-one name="foo" class="Foo">
+ <column name="foo" length="36" index="fbmtoidx"/>
+ </many-to-one>
+
+ <property name="long">
+ <column name="long_" index="fbmtoidx" unique-key="abc" not-null="true"/>
+ </property>
+ <property name="integer">
+ <column name="`integer__`" unique-key="abc" not-null="true"/>
+ </property>
+ <property name="float">
+ <column name="float_" unique-key="abc" not-null="true" check="float_ > 0.0"/>
+ </property>
+ <property name="x"/>
+ <property name="double" column="double_"/>
+
+ <primitive-array name="bytes" table="foobytes">
+ <key column="id"/>
+ <index column="i"/>
+ <element column="byte_" type="byte"/>
+ </primitive-array>
+
+ <property name="date" type="date" column="date_"/>
+ <property name="timestamp" type="timestamp" column="timestamp_"/>
+ <property name="boolean" column="boolean_"/>
+ <property name="bool" column="bool_"/>
+ <property name="null" column="null_"/>
+ <property name="short" column="short_"/>
+ <property name="char" column="char_"/>
+ <property name="zero" column="zero_"/>
+ <property name="int" column="int_"/>
+ <property name="string">
+ <column name="string_" length="48" index="fbstridx"/>
+ </property>
+ <property name="byte" column="byte_"/>
+ <property name="yesno" type="yes_no"/>
+ <property name="blob" type="org.hibernate.test.legacy.Foo$Struct" column="blobb_"/>
+ <property name="nullBlob" type="serializable"/>
+ <property name="binary" column="bin_"/>
+ <property name="theLocale" access="field" column="`localeayzabc123`"/>
+
+ <property name="formula" formula="int_/2"/>
+
+ <property name="custom" type="org.hibernate.test.legacy.DoubleStringType" access="field">
+ <column name="first_name" length="66"/>
+ <column name="surname" length="66"/>
+ </property>
+ <component name="nullComponent">
+ <property name="name" column="null_cmpnt_"/>
+ </component>
+
+ <join table="jointable">
+ <key column="fooid" on-delete="cascade"/>
+ <property name="joinedProp"/>
+ </join>
+
+ <subclass
+ name="Trivial"
+ proxy="FooProxy"
+ discriminator-value="T"/>
+
+ <subclass
+ name="Abstract"
+ proxy="AbstractProxy"
+ discriminator-value="null">
+ <set name="abstracts" batch-size="2">
+ <key column="abstract_id"/>
+ <one-to-many class="Abstract"/>
+ </set>
+ <property name="time" column="the_time"/>
+
+ <subclass
+ name="Bar"
+ proxy="BarProxy"
+ discriminator-value="B">
+ <property name="barString">
+ <column name="bar_string" length="24"/>
+ </property>
+ <any name="object" meta-type="character" id-type="long" cascade="all">
+ <meta-value value="O" class="One"/>
+ <meta-value value="M" class="Many"/>
+ <column name="clazz" length="100"/>
+ <column name="gen_id"/>
+ </any>
+ <join table="bar_join_table">
+ <key column="bar_id"/>
+ <property name="name" column="name_name"/>
+ </join>
+ </subclass>
+ </subclass>
+ </class>
+
+ <class name="One" table="one">
+ <id name="key" column="one_key">
+ <generator class="native" />
+ </id>
+ <property name="x"/>
+ <property column="one_value" name="value"/>
+ </class>
+
+ <class name="Many" table="many">
+ <id name="key" column="many_key">
+ <generator class="native" />
+ </id>
+ <property name="x"/>
+ </class>
+
+</hibernate-mapping>
+
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/KeyManyToOneEntity.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/KeyManyToOneEntity.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/KeyManyToOneEntity.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast">
+
+ <class name="KeyManyToOneKeyEntity">
+ <id name="id" type="long" access="field" >
+ <generator class="native"/>
+ </id>
+ <property name="Name" type="string"/>
+ </class>
+
+ <class name="KeyManyToOneEntity">
+ <composite-id name="id" access="field" class="KeyManyToOneEntity$Id" unsaved-value="undefined" >
+ <key-many-to-one name="key1" class="KeyManyToOneKeyEntity" />
+ <key-property name="key2" type="string"/>
+ </composite-id>
+ <property name="Name" type="string"/>
+ </class>
+
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Multi.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Multi.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Multi.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast"
+ default-lazy="false">
+
+ <class
+ name="org.hibernate.test.legacy.Top"
+ table="rootclass"
+ dynamic-insert="true"
+ dynamic-update="true"
+ select-before-update="true"
+ where="id1_ is not null">
+ <!--cache-->
+ <id name="id" type="long" column="id1_" unsaved-value="0">
+ <generator class="native"/>
+ </id>
+ <version name="count" column="count_"/>
+ <property name="name"/>
+ <property name="address"/>
+ <property name="date" column="date_"/>
+ <many-to-one name="top" access="field" column="top_"/>
+
+ <joined-subclass name="org.hibernate.test.legacy.TrivialClass">
+ <key column="tcid"/>
+ </joined-subclass>
+
+ <joined-subclass
+ name="org.hibernate.test.legacy.Lower"
+ table="leafsubclass"
+ dynamic-insert="true"
+ dynamic-update="true">
+ <key column="id__"/>
+ <property name="intprop" not-null="true"/>
+ <one-to-one name="other" class="org.hibernate.test.legacy.Lower"/>
+ <many-to-one name="another" column="other1" class="org.hibernate.test.legacy.Top"/>
+ <many-to-one name="yetanother" column="other3" class="org.hibernate.test.legacy.Lower"/>
+ <property name="foo"/>
+ <set name="set" lazy="false">
+ <key column="parent"/>
+ <one-to-many class="org.hibernate.test.legacy.Top"/>
+ </set>
+ <bag name="bag" lazy="true" table="simple_simple">
+ <key column="simple1"/>
+ <many-to-many column="simple2" class="org.hibernate.test.legacy.Top"/>
+ </bag>
+ <one-to-one name="mypo"/>
+ </joined-subclass>
+
+ <joined-subclass name="org.hibernate.test.legacy.Multi" table="nonleafsubclass">
+ <key column="sid" on-delete="cascade"/>
+ <property name="extraProp" column="dupe"/>
+ <many-to-one name="other" column="other2" class="org.hibernate.test.legacy.Multi" />
+ <many-to-one name="po"/>
+ <property name="derived" formula="upper(dupe)"/>
+
+ <component name="comp" class="org.hibernate.test.legacy.Multi$Component">
+ <property name="cal"/>
+ <property name="floaty"/>
+ </component>
+
+ <joined-subclass name="org.hibernate.test.legacy.SubMulti" table="leafsubsubclass">
+ <key column="sid"/>
+ <property name="amount" column="dupe"/>
+ <bag name="children" lazy="true" inverse="true">
+ <key column="parent"/>
+ <one-to-many class="org.hibernate.test.legacy.SubMulti"/>
+ </bag>
+ <many-to-one name="parent"/>
+ <list name="moreChildren" lazy="true">
+ <key column="another_parent"/>
+ <index column="list_ind"/>
+ <one-to-many class="org.hibernate.test.legacy.SubMulti"/>
+ </list>
+ </joined-subclass>
+
+ </joined-subclass>
+
+ </class>
+
+ <class
+ name="org.hibernate.test.legacy.Po"
+ dynamic-insert="true">
+ <id type="long" column="id_">
+ <generator class="native"/>
+ </id>
+ <property name="value" column="value_"/>
+ <list name="list" cascade="all">
+ <key column="list_po"/>
+ <index column="i"/>
+ <one-to-many class="org.hibernate.test.legacy.SubMulti"/>
+ </list>
+ <set name="set" inverse="true" cascade="all">
+ <key column="po"/>
+ <one-to-many class="org.hibernate.test.legacy.Multi"/>
+ </set>
+ <many-to-one name="top" column="tl" insert="false" update="false"/>
+ <many-to-one name="lower" column="tl"/>
+ </class>
+
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/SimpleEntityWithAssociation.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/SimpleEntityWithAssociation.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/SimpleEntityWithAssociation.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast">
+
+ <!-- *Very* important for the test cases that these entities have identically named columns! -->
+
+ <class name="SimpleEntityWithAssociation" table="SIMPLE_1">
+ <id name="Id" column="ID" type="long">
+ <generator class="native"/>
+ </id>
+ <property name="Name" column="NAME" type="string"/>
+ <set name="AssociatedEntities" cascade="all" inverse="true" lazy="true">
+ <key column="SIMPLE_1_ID"/>
+ <one-to-many class="SimpleAssociatedEntity"/>
+ </set>
+ <set name="ManyToManyAssociatedEntities" cascade="save-update" inverse="false" lazy="true" table="MANY_TO_MANY">
+ <key column="IN_ID"/>
+ <many-to-many class="SimpleEntityWithAssociation" column="OUT_ID"/>
+ </set>
+ </class>
+
+ <class name="SimpleAssociatedEntity" table="SIMPLE_2">
+ <id name="Id" column="ID" type="long">
+ <generator class="native"/>
+ </id>
+ <property name="Name" column="NAME" type="string" />
+ <many-to-one name="Owner" class="SimpleEntityWithAssociation" column="SIMPLE_1_ID"/>
+ </class>
+
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Vehicle.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Vehicle.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Vehicle.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast">
+
+ <!-- Vehicle represents an abstract root of a union-subclass hierarchy -->
+ <class name="Vehicle" abstract="true">
+ <id name="id" access="field" type="long">
+ <generator class="increment"/>
+ </id>
+ <property name="Vin" type="string"/>
+ <property name="Owner" type="string"/>
+
+ <!-- Car represents a concrete leaf of a union-subclass hierarchy with no concrete super -->
+ <union-subclass name="Car"/>
+
+ <!-- Truck represents a concrete subclass in a union-subclass hierarchy with concrete subclasses and no concrete super -->
+ <union-subclass name="Truck">
+ <!-- Both SUV and Pickup represent concrete leaf of a union-subclass hierarchy (like Car), but with a concrete super -->
+ <union-subclass name="SUV"/>
+ <union-subclass name="Pickup"/>
+ </union-subclass>
+ </class>
+
+ <sql-query name="native-delete-car">
+ <synchronize table="Car"/>
+ delete from CAR where owner = ?
+ </sql-query>
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Versions.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Versions.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/HQL/Ast/Versions.hbm.xml 2009-05-03 13:43:03 UTC (rev 4227)
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.HQL.Ast"
+ default-access="field">
+
+ <class name="IntegerVersioned">
+ <id name="id">
+ <generator class="native"/>
+ </id>
+ <version name="version" column="vers"/>
+ <property name="name"/>
+ </class>
+
+ <class name="TimestampVersioned">
+ <id name="id">
+ <generator class="native"/>
+ </id>
+ <timestamp name="version" column="vers"/>
+ <property name="name"/>
+ </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-05-03 12:37:55 UTC (rev 4226)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-05-03 13:43:03 UTC (rev 4227)
@@ -293,6 +293,7 @@
<Compile Include="GenericTest\SetGeneric\SetGenericFixture.cs" />
<Compile Include="HQL\Animal.cs" />
<Compile Include="HQL\Ast\BaseFixture.cs" />
+ <Compile Include="HQL\Ast\BulkManipulation.cs" />
<Compile Include="HQL\Ast\ParsingFixture.cs" />
<Compile Include="HQL\Ast\SimpleClass.cs" />
<Compile Include="HQL\Ast\SqlTranslationFixture.cs" />
@@ -1724,6 +1725,15 @@
<EmbeddedResource Include="Deletetransient\Person.hbm.xml" />
<EmbeddedResource Include="BulkManipulation\SimpleClass.hbm.xml" />
<Content Include="DynamicEntity\package.html" />
+ <Content Include="HQL\Ast\Animal.hbm.xml" />
+ <Content Include="HQL\Ast\BooleanLiteralEntity.hbm.xml" />
+ <Content Include="HQL\Ast\EntityWithCrazyCompositeKey.hbm.xml" />
+ <Content Include="HQL\Ast\FooBarCopy.hbm.xml" />
+ <Content Include="HQL\Ast\KeyManyToOneEntity.hbm.xml" />
+ <Content Include="HQL\Ast\Multi.hbm.xml" />
+ <Content Include="HQL\Ast\SimpleEntityWithAssociation.hbm.xml" />
+ <Content Include="HQL\Ast\Vehicle.hbm.xml" />
+ <Content Include="HQL\Ast\Versions.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH1727\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH1742\Mappings.hbm.xml" />
<EmbeddedResource Include="HQL\Ast\SimpleClass.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|