|
From: <fab...@us...> - 2009-02-05 04:47:08
|
Revision: 4047
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=4047&view=rev
Author: fabiomaulo
Date: 2009-02-05 04:47:03 +0000 (Thu, 05 Feb 2009)
Log Message:
-----------
Test for SequenceIdentity feature
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/
trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/MyEntity.cs
trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/MyEntity.hbm.xml
trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/SequenceIdentityFixture.cs
Added: trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/MyEntity.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/MyEntity.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/MyEntity.cs 2009-02-05 04:47:03 UTC (rev 4047)
@@ -0,0 +1,19 @@
+namespace NHibernate.Test.Generatedkeys.Seqidentity
+{
+ public class MyEntity
+ {
+ private int id;
+ private string name;
+
+ public virtual int Id
+ {
+ get { return id; }
+ }
+
+ public virtual string Name
+ {
+ get { return name; }
+ set { name = value; }
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/MyEntity.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/MyEntity.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/MyEntity.hbm.xml 2009-02-05 04:47:03 UTC (rev 4047)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.Generatedkeys.Seqidentity"
+ default-access="field">
+
+ <class name="MyEntity" table="my_entity">
+
+ <id name="id">
+ <generator class="sequence-identity"/>
+ </id>
+ <natural-id>
+ <property name="name"/>
+ </natural-id>
+ </class>
+
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/SequenceIdentityFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/SequenceIdentityFixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/Generatedkeys/Seqidentity/SequenceIdentityFixture.cs 2009-02-05 04:47:03 UTC (rev 4047)
@@ -0,0 +1,41 @@
+using System.Collections;
+using NUnit.Framework;
+
+namespace NHibernate.Test.Generatedkeys.Seqidentity
+{
+ [TestFixture, Ignore("Solution not implemented yet.")]
+ public class SequenceIdentityFixture : TestCase
+ {
+ protected override IList Mappings
+ {
+ get { return new[] { "Generatedkeys.Seqidentity.MyEntity.hbm.xml" }; }
+ }
+
+ protected override string MappingsAssembly
+ {
+ get { return "NHibernate.Test"; }
+ }
+
+ protected override bool AppliesTo(Dialect.Dialect dialect)
+ {
+ return dialect.SupportsSequences;
+ }
+
+ [Test]
+ public void SequenceIdentityGenerator()
+ {
+ ISession session = OpenSession();
+ session.BeginTransaction();
+
+ var e = new MyEntity{Name="entity-1"};
+ session.Save(e);
+
+ // this insert should happen immediately!
+ Assert.AreEqual(1, e.Id, "id not generated through forced insertion");
+
+ session.Delete(e);
+ session.Transaction.Commit();
+ session.Close();
+ }
+ }
+}
\ 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-04 22:54:43 UTC (rev 4046)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2009-02-05 04:47:03 UTC (rev 4047)
@@ -250,6 +250,8 @@
<Compile Include="Generatedkeys\Identity\MySibling.cs" />
<Compile Include="Generatedkeys\Select\MyEntity.cs" />
<Compile Include="Generatedkeys\Select\SelectGeneratorTest.cs" />
+ <Compile Include="Generatedkeys\Seqidentity\MyEntity.cs" />
+ <Compile Include="Generatedkeys\Seqidentity\SequenceIdentityFixture.cs" />
<Compile Include="GeneratedTest\AbstractGeneratedPropertyTest.cs" />
<Compile Include="GeneratedTest\Component.cs" />
<Compile Include="GeneratedTest\ComponentOwner.cs" />
@@ -1627,6 +1629,7 @@
<EmbeddedResource Include="Cascade\JobBatch.hbm.xml" />
<EmbeddedResource Include="Deletetransient\Person.hbm.xml" />
<Content Include="DynamicEntity\package.html" />
+ <EmbeddedResource Include="Generatedkeys\Seqidentity\MyEntity.hbm.xml" />
<EmbeddedResource Include="IdGen\NativeGuid\NativeGuidPoid.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\Dates\Mappings\Time.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\Dates\Mappings\Date.hbm.xml" />
@@ -1750,4 +1753,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.
|