From: <fab...@us...> - 2008-08-01 04:25:51
|
Revision: 3694 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=3694&view=rev Author: fabiomaulo Date: 2008-08-01 04:26:00 +0000 (Fri, 01 Aug 2008) Log Message: ----------- Included test only to be sure we have the same behavior (in the trunk we have a different implementation of collections and cascade). Same behavior confirmed. Modified Paths: -------------- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test-2.0.csproj Added Paths: ----------- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Blog.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Entry.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Fixture.cs trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Mappings.hbm.xml Copied: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Blog.cs (from rev 3693, branches/2.0.x/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Blog.cs) =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Blog.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Blog.cs 2008-08-01 04:26:00 UTC (rev 3694) @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; + +namespace NHibernate.Test.NHSpecificTest.NH1419 +{ + [Serializable] + public class Blog + { + private Guid id; + private string name; + private IList<Entry> entries; + + public Guid ID + { + get { return id; } + set { id = value; } + } + + public string Name + { + get { return name; } + set { name = value; } + } + + public IList<Entry> Entries + { + get { return entries; } + set { entries = value; } + } + + public void AddEntry(Entry entry) + { + if (entries == null) + { + entries = new List<Entry>(); + } + entry.Blog = this; + entries.Add(entry); + } + } +} \ No newline at end of file Property changes on: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Blog.cs ___________________________________________________________________ Added: svn:mergeinfo + Copied: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Entry.cs (from rev 3693, branches/2.0.x/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Entry.cs) =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Entry.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Entry.cs 2008-08-01 04:26:00 UTC (rev 3694) @@ -0,0 +1,30 @@ +using System; + +namespace NHibernate.Test.NHSpecificTest.NH1419 +{ + [Serializable] + public class Entry + { + private Guid id; + private Blog blog; + private string subject; + + public Guid ID + { + get { return id; } + set { id = value; } + } + + public Blog Blog + { + get { return blog; } + set { blog = value; } + } + + public string Subject + { + get { return subject; } + set { subject = value; } + } + } +} Property changes on: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Entry.cs ___________________________________________________________________ Added: svn:mergeinfo + Copied: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Fixture.cs (from rev 3693, branches/2.0.x/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Fixture.cs) =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Fixture.cs (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Fixture.cs 2008-08-01 04:26:00 UTC (rev 3694) @@ -0,0 +1,58 @@ +using NHibernate; +using NUnit.Framework; + +namespace NHibernate.Test.NHSpecificTest.NH1419 +{ + [TestFixture] + public class Tests : BugTestCase + { + [Test] + public void Bug() + { + using (ISession session = OpenSession()) + { + ITransaction transaction = session.BeginTransaction(); + + Blog blog = new Blog(); + blog.Name = "Test Blog 1"; + + Entry entry = new Entry(); + entry.Subject = "Test Entry 1"; + + blog.AddEntry(entry); + + session.SaveOrUpdate(blog); + + transaction.Commit(); + } + using (ISession session = OpenSession()) + { + ITransaction transaction = session.BeginTransaction(); + session.Delete("from Blog"); + transaction.Commit(); + } + } + + [Test] + public void WithEmptyCollection() + { + using (ISession session = OpenSession()) + { + ITransaction transaction = session.BeginTransaction(); + + Blog blog = new Blog(); + blog.Name = "Test Blog 1"; + + session.SaveOrUpdate(blog); + + transaction.Commit(); + } + using (ISession session = OpenSession()) + { + ITransaction transaction = session.BeginTransaction(); + session.Delete("from Blog"); + transaction.Commit(); + } + } + } +} Property changes on: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Fixture.cs ___________________________________________________________________ Added: svn:mergeinfo + Copied: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Mappings.hbm.xml (from rev 3693, branches/2.0.x/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Mappings.hbm.xml) =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Mappings.hbm.xml (rev 0) +++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Mappings.hbm.xml 2008-08-01 04:26:00 UTC (rev 3694) @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8" ?> +<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" + assembly="NHibernate.Test" + namespace="NHibernate.Test.NHSpecificTest.NH1419" + default-lazy="false"> + + <class name="Blog" table="Blogs"> + <id name="ID" type="Guid" column="BlogID"> + <generator class="guid" /> + </id> + <property name="Name"/> + <bag name="Entries" cascade="all-delete-orphan" inverse="true" generic="true"> + <key column="BlogID"/> + <one-to-many class="Entry"/> + </bag> + </class> + + <class name ="Entry" table="Entries"> + <id name="ID" type="Guid" column="EntryID"> + <generator class="guid" /> + </id> + <many-to-one name="Blog" class="Blog" column="BlogID"/> + <property name="Subject"/> + </class> +</hibernate-mapping> Property changes on: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1419/Mappings.hbm.xml ___________________________________________________________________ Added: svn:mergeinfo + Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test-2.0.csproj =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test-2.0.csproj 2008-08-01 04:22:05 UTC (rev 3693) +++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test-2.0.csproj 2008-08-01 04:26:00 UTC (rev 3694) @@ -415,6 +415,9 @@ <Compile Include="NHSpecificTest\NH1408\Entity.cs" /> <Compile Include="NHSpecificTest\NH1413\Foo.cs" /> <Compile Include="NHSpecificTest\NH1413\PagingTest.cs" /> + <Compile Include="NHSpecificTest\NH1419\Blog.cs" /> + <Compile Include="NHSpecificTest\NH1419\Entry.cs" /> + <Compile Include="NHSpecificTest\NH1419\Fixture.cs" /> <Compile Include="NHSpecificTest\NH280\Fixture.cs" /> <Compile Include="NHSpecificTest\NH280\Foo.cs" /> <Compile Include="NHSpecificTest\NH1018\Employee.cs" /> @@ -1393,6 +1396,7 @@ <EmbeddedResource Include="Any\Person.hbm.xml" /> <EmbeddedResource Include="Any\Properties.hbm.xml" /> <Content Include="DynamicEntity\package.html" /> + <EmbeddedResource Include="NHSpecificTest\NH1419\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1413\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1304\Mappings.hbm.xml" /> <EmbeddedResource Include="NHSpecificTest\NH1408\Mappings.hbm.xml" /> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |