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