|
From: <pa...@us...> - 2011-03-06 20:46:17
|
Revision: 5439
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5439&view=rev
Author: patearl
Date: 2011-03-06 20:46:10 +0000 (Sun, 06 Mar 2011)
Log Message:
-----------
Tests: Added test dialect indicator for "= some (subquery)". Don't test for it when it's not supported.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/Legacy/FooBarTest.cs
trunk/nhibernate/src/NHibernate.Test/Legacy/SQLFunctionsTest.cs
trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
Modified: trunk/nhibernate/src/NHibernate.Test/Legacy/FooBarTest.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Legacy/FooBarTest.cs 2011-03-06 20:39:29 UTC (rev 5438)
+++ trunk/nhibernate/src/NHibernate.Test/Legacy/FooBarTest.cs 2011-03-06 20:46:10 UTC (rev 5439)
@@ -510,7 +510,7 @@
foo.TheFoo.TheFoo = foo;
foo.String = "fizard";
- if (Dialect.SupportsSubSelects)
+ if (Dialect.SupportsSubSelects && TestDialect.SupportsOperatorSome)
{
if (!(Dialect is FirebirdDialect))
{
Modified: trunk/nhibernate/src/NHibernate.Test/Legacy/SQLFunctionsTest.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Legacy/SQLFunctionsTest.cs 2011-03-06 20:39:29 UTC (rev 5438)
+++ trunk/nhibernate/src/NHibernate.Test/Legacy/SQLFunctionsTest.cs 2011-03-06 20:46:10 UTC (rev 5439)
@@ -478,7 +478,7 @@
s.Save(min, (long) 30);
- if (Dialect.SupportsSubSelects)
+ if (Dialect.SupportsSubSelects && TestDialect.SupportsOperatorSome)
{
Assert.AreEqual(2,
s.CreateQuery(
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-06 20:39:29 UTC (rev 5438)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-06 20:46:10 UTC (rev 5439)
@@ -22,5 +22,6 @@
}
public virtual bool SupportsOperatorAll { get { return true; } }
+ public virtual bool SupportsOperatorSome { get { return true; } }
}
}
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-06 20:39:29 UTC (rev 5438)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-06 20:46:10 UTC (rev 5439)
@@ -11,5 +11,10 @@
{
get { return false; }
}
+
+ public override bool SupportsOperatorSome
+ {
+ get { return false; }
+ }
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-03-06 21:13:36
|
Revision: 5440
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5440&view=rev
Author: patearl
Date: 2011-03-06 21:13:30 +0000 (Sun, 06 Mar 2011)
Log Message:
-----------
Ignore tests relying on locate when locate function is not available.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/Linq/FunctionTests.cs
trunk/nhibernate/src/NHibernate.Test/Linq/ReadonlyTestCase.cs
trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
Modified: trunk/nhibernate/src/NHibernate.Test/Linq/FunctionTests.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Linq/FunctionTests.cs 2011-03-06 20:46:10 UTC (rev 5439)
+++ trunk/nhibernate/src/NHibernate.Test/Linq/FunctionTests.cs 2011-03-06 21:13:30 UTC (rev 5440)
@@ -45,6 +45,9 @@
[Test]
public void CharIndexFunction()
{
+ if (!TestDialect.SupportsLocate)
+ Assert.Ignore("Locate function not supported.");
+
var query = from e in db.Employees
where e.FirstName.IndexOf('A') == 1
select e.FirstName;
@@ -55,6 +58,9 @@
[Test]
public void IndexOfFunctionExpression()
{
+ if (!TestDialect.SupportsLocate)
+ Assert.Ignore("Locate function not supported.");
+
var query = from e in db.Employees
where e.FirstName.IndexOf("An") == 1
select e.FirstName;
@@ -75,7 +81,10 @@
[Test]
public void TwoFunctionExpression()
{
- var query = from e in db.Employees
+ if (!TestDialect.SupportsLocate)
+ Assert.Ignore("Locate function not supported.");
+
+ var query = from e in db.Employees
where e.FirstName.IndexOf("A") == e.BirthDate.Value.Month
select e.FirstName;
Modified: trunk/nhibernate/src/NHibernate.Test/Linq/ReadonlyTestCase.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Linq/ReadonlyTestCase.cs 2011-03-06 20:46:10 UTC (rev 5439)
+++ trunk/nhibernate/src/NHibernate.Test/Linq/ReadonlyTestCase.cs 2011-03-06 21:13:30 UTC (rev 5440)
@@ -23,6 +23,11 @@
get { return NHibernate.Dialect.Dialect.GetDialect(_cfg.Properties); }
}
+ protected TestDialect TestDialect
+ {
+ get { return TestDialect.GetTestDialect(Dialect); }
+ }
+
/// <summary>
/// To use in in-line test
/// </summary>
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-06 20:46:10 UTC (rev 5439)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-06 21:13:30 UTC (rev 5440)
@@ -23,5 +23,6 @@
public virtual bool SupportsOperatorAll { get { return true; } }
public virtual bool SupportsOperatorSome { get { return true; } }
+ public virtual bool SupportsLocate { get { return true; } }
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ric...@us...> - 2011-03-09 17:07:15
|
Revision: 5449
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5449&view=rev
Author: ricbrown
Date: 2011-03-09 17:07:09 +0000 (Wed, 09 Mar 2011)
Log Message:
-----------
Escaped column names for tests failing on Firebird.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/Join/Person.hbm.xml
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH750/Mappings.hbm.xml
Modified: trunk/nhibernate/src/NHibernate.Test/Join/Person.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Join/Person.hbm.xml 2011-03-09 12:24:56 UTC (rev 5448)
+++ trunk/nhibernate/src/NHibernate.Test/Join/Person.hbm.xml 2011-03-09 17:07:09 UTC (rev 5449)
@@ -66,7 +66,7 @@
</join>
<join table="t_silly" fetch="select" optional="true">
<key column="person_id"/>
- <property name="_Silly" access="field"/>
+ <property name="_Silly" column="`_Silly`" access="field"/>
</join>
</subclass>
</class>
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH750/Mappings.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH750/Mappings.hbm.xml 2011-03-09 12:24:56 UTC (rev 5448)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH750/Mappings.hbm.xml 2011-03-09 17:07:09 UTC (rev 5449)
@@ -5,7 +5,7 @@
default-access="field.camelcase-underscore"
default-lazy="false">
<class name="Device">
- <id name="_id" type="Int32" access="field">
+ <id name="_id" column="`_id`" type="Int32" access="field">
<generator class="native"/>
</id>
<property name="Manifacturer"/>
@@ -16,7 +16,7 @@
</class>
<class name="Drive">
- <id name="_id" type="Int32" access="field">
+ <id name="_id" column="`_id`" type="Int32" access="field">
<generator class="native"/>
</id>
<property name="ClassFullName"/>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-03-13 03:34:18
|
Revision: 5464
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5464&view=rev
Author: patearl
Date: 2011-03-13 03:34:12 +0000 (Sun, 13 Mar 2011)
Log Message:
-----------
Tests: Fixed some mismatched test data.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/DbScripts/PostgreSQL82DialectLinqReadonlyCreateScript.sql
trunk/nhibernate/src/NHibernate.Test/Linq/NorthwindDbCreator.cs
Modified: trunk/nhibernate/src/NHibernate.Test/DbScripts/PostgreSQL82DialectLinqReadonlyCreateScript.sql
===================================================================
(Binary files differ)
Modified: trunk/nhibernate/src/NHibernate.Test/Linq/NorthwindDbCreator.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Linq/NorthwindDbCreator.cs 2011-03-13 03:23:57 UTC (rev 5463)
+++ trunk/nhibernate/src/NHibernate.Test/Linq/NorthwindDbCreator.cs 2011-03-13 03:34:12 UTC (rev 5464)
@@ -62,7 +62,8 @@
{
InvalidLoginAttempts = 6,
LastLoginDate = DateTime.Now.AddDays(-1),
- Enum1 = EnumStoredAsString.Medium
+ Enum1 = EnumStoredAsString.Medium,
+ Features = FeatureSet.HasAll
}
};
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-03-13 23:01:03
|
Revision: 5468
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5468&view=rev
Author: patearl
Date: 2011-03-13 23:00:55 +0000 (Sun, 13 Mar 2011)
Log Message:
-----------
Tests: Improved support for SQLite in some tests.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/DtcFailures/DtcFailuresFixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1632/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1792/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/DtcFailures/DtcFailuresFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/DtcFailures/DtcFailuresFixture.cs 2011-03-13 04:56:18 UTC (rev 5467)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/DtcFailures/DtcFailuresFixture.cs 2011-03-13 23:00:55 UTC (rev 5468)
@@ -23,6 +23,11 @@
get { return "NHibernate.Test"; }
}
+ protected override bool AppliesTo(Dialect.Dialect dialect)
+ {
+ return TestDialect.GetTestDialect(dialect).SupportsDistributedTransactions;
+ }
+
[Test]
public void WillNotCrashOnDtcPrepareFailure()
{
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1632/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1632/Fixture.cs 2011-03-13 04:56:18 UTC (rev 5467)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1632/Fixture.cs 2011-03-13 23:00:55 UTC (rev 5468)
@@ -31,7 +31,7 @@
using (var session = sessions.OpenSession())
using (var command = session.Connection.CreateCommand())
{
- command.CommandText = "select next_hi from hibernate_unique_key with (updlock, rowlock)";
+ command.CommandText = "select next_hi from hibernate_unique_key";
scalar1 = command.ExecuteScalar();
}
@@ -52,7 +52,7 @@
using (var session = sessions.OpenSession())
using (var command = session.Connection.CreateCommand())
{
- command.CommandText = "select next_hi from hibernate_unique_key with (updlock, rowlock)";
+ command.CommandText = "select next_hi from hibernate_unique_key";
scalar2 = command.ExecuteScalar();
}
@@ -174,6 +174,9 @@
[Test]
public void When_using_two_sessions_with_explicit_flush()
{
+ if (!TestDialect.SupportsConcurrentTransactions)
+ Assert.Ignore(Dialect.GetType().Name + " does not support concurrent transactions.");
+
object id1, id2;
using (var tx = new TransactionScope())
{
@@ -209,6 +212,9 @@
[Test]
public void When_using_two_sessions()
{
+ if (!TestDialect.SupportsConcurrentTransactions)
+ Assert.Ignore(Dialect.GetType().Name + " does not support concurrent transactions.");
+
object id1, id2;
using (var tx = new TransactionScope())
{
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1792/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1792/Fixture.cs 2011-03-13 04:56:18 UTC (rev 5467)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1792/Fixture.cs 2011-03-13 23:00:55 UTC (rev 5468)
@@ -81,7 +81,7 @@
{
IList<Product> results =
session.CreateCriteria<Product>().Add(
- Expression.Sql("{alias}.Id in (Select top 5 p.Id from Product p order by Name)")).Add(Restrictions.Gt("Id", 0)).
+ Expression.Sql("{alias}.Id in (Select p.Id from Product p order by Name)")).Add(Restrictions.Gt("Id", 0)).
SetMaxResults(3).List<Product>();
Assert.AreEqual(3, results.Count);
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-13 04:56:18 UTC (rev 5467)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-13 23:00:55 UTC (rev 5468)
@@ -24,5 +24,14 @@
public virtual bool SupportsOperatorAll { get { return true; } }
public virtual bool SupportsOperatorSome { get { return true; } }
public virtual bool SupportsLocate { get { return true; } }
+
+ public virtual bool SupportsDistributedTransactions { get { return true; } }
+
+ /// <summary>
+ /// Whether two transactions can be run at the same time. For example, with SQLite
+ /// the database is locked when one transaction is run, so running a second transaction
+ /// will cause a "database is locked" error message.
+ /// </summary>
+ public virtual bool SupportsConcurrentTransactions { get { return true; } }
}
}
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-13 04:56:18 UTC (rev 5467)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-13 23:00:55 UTC (rev 5468)
@@ -21,5 +21,15 @@
{
get { return false; }
}
+
+ public override bool SupportsDistributedTransactions
+ {
+ get { return false; }
+ }
+
+ public override bool SupportsConcurrentTransactions
+ {
+ get { return false; }
+ }
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-03-16 04:24:26
|
Revision: 5474
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5474&view=rev
Author: patearl
Date: 2011-03-16 04:24:20 +0000 (Wed, 16 Mar 2011)
Log Message:
-----------
Tests: Avoid full join test with SQLite since it doesn't look like it can be emulated within the existing dialect structure for join formulation. This may be worth revisiting.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1857/FullJoinTest.cs
trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1857/FullJoinTest.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1857/FullJoinTest.cs 2011-03-14 20:21:30 UTC (rev 5473)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1857/FullJoinTest.cs 2011-03-16 04:24:20 UTC (rev 5474)
@@ -42,6 +42,11 @@
}
}
+ protected override bool AppliesTo(Dialect.Dialect dialect)
+ {
+ return TestDialect.GetTestDialect(dialect).SupportsFullJoin;
+ }
+
[Test]
public void TestFullJoin()
{
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-14 20:21:30 UTC (rev 5473)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-16 04:24:20 UTC (rev 5474)
@@ -33,5 +33,7 @@
/// will cause a "database is locked" error message.
/// </summary>
public virtual bool SupportsConcurrentTransactions { get { return true; } }
+
+ public virtual bool SupportsFullJoin { get { return true; } }
}
}
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-14 20:21:30 UTC (rev 5473)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-16 04:24:20 UTC (rev 5474)
@@ -31,5 +31,10 @@
{
get { return false; }
}
+
+ public override bool SupportsFullJoin
+ {
+ get { return false; }
+ }
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-03-20 20:20:42
|
Revision: 5480
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5480&view=rev
Author: fabiomaulo
Date: 2011-03-20 20:20:35 +0000 (Sun, 20 Mar 2011)
Log Message:
-----------
Removed Bytecode.Castle from tests; all tests running using our default proxy (even lazy-properties are supported ;) )
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/GhostProperty/GhostPropertyFixture.cs
trunk/nhibernate/src/NHibernate.Test/LazyOneToOne/LazyOneToOneTest.cs
trunk/nhibernate/src/NHibernate.Test/LazyProperty/LazyPropertyFixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2092/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2093/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2094/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2102/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2148/BugFixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2565/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.build
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Modified: trunk/nhibernate/src/NHibernate.Test/GhostProperty/GhostPropertyFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/GhostProperty/GhostPropertyFixture.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/GhostProperty/GhostPropertyFixture.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -1,6 +1,4 @@
using System.Collections;
-using NHibernate.ByteCode.Castle;
-using NHibernate.Cfg;
using NHibernate.Tuple.Entity;
using NUnit.Framework;
@@ -21,12 +19,6 @@
get { return new[] { "GhostProperty.Mappings.hbm.xml" }; }
}
- protected override void Configure(NHibernate.Cfg.Configuration configuration)
- {
- configuration.SetProperty(Environment.ProxyFactoryFactoryClass,
- typeof(ProxyFactoryFactory).AssemblyQualifiedName);
- }
-
protected override void OnSetUp()
{
using (var s = OpenSession())
Modified: trunk/nhibernate/src/NHibernate.Test/LazyOneToOne/LazyOneToOneTest.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/LazyOneToOne/LazyOneToOneTest.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/LazyOneToOne/LazyOneToOneTest.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -26,8 +26,6 @@
//}
protected override void Configure(Cfg.Configuration configuration)
{
- configuration.SetProperty(Environment.ProxyFactoryFactoryClass,
- typeof(NHibernate.ByteCode.Castle.ProxyFactoryFactory).AssemblyQualifiedName);
configuration.SetProperty(Environment.MaxFetchDepth, "2");
configuration.SetProperty(Environment.UseSecondLevelCache, "false");
}
Modified: trunk/nhibernate/src/NHibernate.Test/LazyProperty/LazyPropertyFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/LazyProperty/LazyPropertyFixture.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/LazyProperty/LazyPropertyFixture.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -1,7 +1,4 @@
using System.Collections;
-using log4net.Core;
-using NHibernate.ByteCode.Castle;
-using NHibernate.Cfg;
using NHibernate.Tuple.Entity;
using NUnit.Framework;
@@ -22,12 +19,6 @@
get { return new[] { "LazyProperty.Mappings.hbm.xml" }; }
}
- protected override void Configure(NHibernate.Cfg.Configuration configuration)
- {
- configuration.SetProperty(Environment.ProxyFactoryFactoryClass,
- typeof(ProxyFactoryFactory).AssemblyQualifiedName);
- }
-
protected override void BuildSessionFactory()
{
using (var logSpy = new LogSpy(typeof(EntityMetamodel)))
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2092/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2092/Fixture.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2092/Fixture.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -1,5 +1,3 @@
-using NHibernate.ByteCode.Castle;
-using NHibernate.Cfg;
using NUnit.Framework;
namespace NHibernate.Test.NHSpecificTest.NH2092
@@ -7,12 +5,6 @@
[TestFixture]
public class Fixture : BugTestCase
{
- protected override void Configure(Configuration configuration)
- {
- configuration.SetProperty(Environment.ProxyFactoryFactoryClass,
- typeof(ProxyFactoryFactory).AssemblyQualifiedName);
- }
-
[Test]
public void ConstrainedLazyLoadedOneToOneUsingCastleProxy()
{
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2093/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2093/Fixture.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2093/Fixture.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -1,6 +1,3 @@
-using System.Linq;
-using NHibernate.ByteCode.Castle;
-using NHibernate.Cfg;
using NHibernate.Proxy;
using NUnit.Framework;
@@ -9,12 +6,6 @@
[TestFixture]
public class Fixture : BugTestCase
{
- protected override void Configure(Configuration configuration)
- {
- configuration.SetProperty(Environment.ProxyFactoryFactoryClass,
- typeof(ProxyFactoryFactory).AssemblyQualifiedName);
- }
-
[Test]
public void NHibernateProxyHelperReturnsCorrectType()
{
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2094/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2094/Fixture.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2094/Fixture.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -1,5 +1,3 @@
-using NHibernate.ByteCode.Castle;
-using NHibernate.Cfg;
using NUnit.Framework;
using SharpTestsEx;
@@ -8,12 +6,6 @@
[TestFixture]
public class Fixture : BugTestCase
{
- protected override void Configure(Configuration configuration)
- {
- configuration.SetProperty(Environment.ProxyFactoryFactoryClass,
- typeof(ProxyFactoryFactory).AssemblyQualifiedName);
- }
-
[Test]
public void CanAccessInitializedPropertiesOutsideOfSession()
{
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2102/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2102/Fixture.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2102/Fixture.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -1,4 +1,3 @@
-using NHibernate.Cfg;
using NUnit.Framework;
using SharpTestsEx;
@@ -7,12 +6,6 @@
[TestFixture]
public class Fixture : BugTestCase
{
- protected override void Configure(Configuration configuration)
- {
- configuration.SetProperty(Environment.ProxyFactoryFactoryClass,
- typeof(ByteCode.Castle.ProxyFactoryFactory).AssemblyQualifiedName);
- }
-
[Test]
public void EntityWithConstrainedLazyLoadedOneToOneShouldNotGenerateFieldInterceptingProxy()
{
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2148/BugFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2148/BugFixture.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2148/BugFixture.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -1,16 +1,9 @@
-using NHibernate.ByteCode.Castle;
-using NHibernate.Cfg;
using NUnit.Framework;
+
namespace NHibernate.Test.NHSpecificTest.NH2148
{
public class BugFixture : BugTestCase
{
- protected override void Configure(NHibernate.Cfg.Configuration configuration)
- {
- configuration.SetProperty(Environment.ProxyFactoryFactoryClass,
- typeof(ProxyFactoryFactory).AssemblyQualifiedName);
- }
-
protected override void OnSetUp()
{
using (var s = OpenSession())
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2565/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2565/Fixture.cs 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2565/Fixture.cs 2011-03-20 20:20:35 UTC (rev 5480)
@@ -41,12 +41,6 @@
}
}
- protected override void Configure(Cfg.Configuration configuration)
- {
- configuration.SetProperty(Cfg.Environment.ProxyFactoryFactoryClass,
- typeof(ByteCode.Castle.ProxyFactoryFactory).AssemblyQualifiedName);
- }
-
[Test]
public void WhenUseLoadThenCanUsePersistToModify()
{
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.build
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.build 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.build 2011-03-20 20:20:35 UTC (rev 5480)
@@ -20,7 +20,6 @@
<include name="System.Data.OracleClient.dll" />
<include name="Iesi.Collections.dll" />
<include name="log4net.dll" />
- <include name="NHibernate.ByteCode.Castle.dll"/>
<include name="NHibernate.DomainModel.dll" />
<include name="NHibernate.dll" />
<include name="nunit.framework.dll" />
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-20 19:54:49 UTC (rev 5479)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-20 20:20:35 UTC (rev 5480)
@@ -1988,10 +1988,6 @@
<EmbeddedResource Include="ReadOnly\VersionedNode.hbm.xml" />
</ItemGroup>
<ItemGroup>
- <ProjectReference Include="..\NHibernate.ByteCode.Castle\NHibernate.ByteCode.Castle.csproj">
- <Project>{31C3F0EA-0FED-4A2F-B68D-96CE29844487}</Project>
- <Name>NHibernate.ByteCode.Castle</Name>
- </ProjectReference>
<ProjectReference Include="..\NHibernate.DomainModel\NHibernate.DomainModel.csproj">
<Project>{5C649B55-1B3F-4C38-9998-1B043E94A244}</Project>
<Name>NHibernate.DomainModel</Name>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-03-20 20:30:59
|
Revision: 5481
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5481&view=rev
Author: fabiomaulo
Date: 2011-03-20 20:30:53 +0000 (Sun, 20 Mar 2011)
Log Message:
-----------
Added base common test for interface proxy Serialization
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/IMyProxy.cs
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/MyProxyImpl.cs
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/ProxyFixture.cs
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/ProxyImpl.hbm.xml
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/IMyProxy.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/IMyProxy.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/IMyProxy.cs 2011-03-20 20:30:53 UTC (rev 5481)
@@ -0,0 +1,11 @@
+namespace NHibernate.Test.DynamicProxyTests.InterfaceProxySerializationTests
+{
+ public interface IMyProxy
+ {
+ int Id { get; set; }
+
+ string Name { get; set; }
+
+ void ThrowDeepException();
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/MyProxyImpl.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/MyProxyImpl.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/MyProxyImpl.cs 2011-03-20 20:30:53 UTC (rev 5481)
@@ -0,0 +1,32 @@
+using System;
+
+namespace NHibernate.Test.DynamicProxyTests.InterfaceProxySerializationTests
+{
+ public class MyProxyImpl: IMyProxy
+ {
+ [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
+ private static void Level1()
+ {
+ Level2();
+ }
+
+ [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.NoInlining)]
+ private static void Level2()
+ {
+ throw new ArgumentException("thrown from Level2");
+ }
+
+ #region CastleProxy Members
+
+ public int Id { get; set; }
+
+ public string Name { get; set; }
+
+ public void ThrowDeepException()
+ {
+ Level1();
+ }
+
+ #endregion
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/ProxyFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/ProxyFixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/ProxyFixture.cs 2011-03-20 20:30:53 UTC (rev 5481)
@@ -0,0 +1,142 @@
+using System;
+using System.Collections;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Runtime.Serialization.Formatters.Binary;
+using NUnit.Framework;
+
+namespace NHibernate.Test.DynamicProxyTests.InterfaceProxySerializationTests
+{
+ [TestFixture]
+ public class ProxyFixture : TestCase
+ {
+ protected override IList Mappings
+ {
+ get { return new[] { "DynamicProxyTests.InterfaceProxySerializationTests.ProxyImpl.hbm.xml" }; }
+ }
+
+ protected override string MappingsAssembly
+ {
+ get { return "NHibernate.Test"; }
+ }
+
+ private void SerializeAndDeserialize(ref ISession s)
+ {
+ // Serialize the session
+ using (Stream stream = new MemoryStream())
+ {
+ IFormatter formatter = new BinaryFormatter();
+ formatter.Serialize(stream, s);
+
+ // Close the original session
+ s.Close();
+
+ // Deserialize the session
+ stream.Position = 0;
+ s = (ISession) formatter.Deserialize(stream);
+ }
+ }
+
+ [Test]
+ public void ExceptionStackTrace()
+ {
+ ISession s = OpenSession();
+ IMyProxy ap = new MyProxyImpl {Id = 1, Name = "first proxy"};
+ s.Save(ap);
+ s.Flush();
+ s.Close();
+
+ s = OpenSession();
+ ap = (IMyProxy) s.Load(typeof (MyProxyImpl), ap.Id);
+ Assert.IsFalse(NHibernateUtil.IsInitialized(ap), "check we have a proxy");
+
+ try
+ {
+ ap.ThrowDeepException();
+ Assert.Fail("Exception not thrown");
+ }
+ catch (ArgumentException ae)
+ {
+ Assert.AreEqual("thrown from Level2", ae.Message);
+
+ string[] stackTraceLines = ae.StackTrace.Split('\n');
+ Assert.IsTrue(stackTraceLines[0].Contains("Level2"), "top of exception stack is Level2()");
+ Assert.IsTrue(stackTraceLines[1].Contains("Level1"), "next on exception stack is Level1()");
+ }
+ finally
+ {
+ s.Delete(ap);
+ s.Flush();
+ s.Close();
+ }
+ }
+
+ [Test]
+ public void Proxy()
+ {
+ ISession s = OpenSession();
+ IMyProxy ap = new MyProxyImpl {Id = 1, Name = "first proxy"};
+ s.Save(ap);
+ s.Flush();
+ s.Close();
+
+ s = OpenSession();
+ ap = (IMyProxy) s.Load(typeof (MyProxyImpl), ap.Id);
+ Assert.IsFalse(NHibernateUtil.IsInitialized(ap));
+ int id = ap.Id;
+ Assert.IsFalse(NHibernateUtil.IsInitialized(ap), "get id should not have initialized it.");
+ string name = ap.Name;
+ Assert.IsTrue(NHibernateUtil.IsInitialized(ap), "get name should have initialized it.");
+ s.Delete(ap);
+ s.Flush();
+ s.Close();
+ }
+
+ [Test]
+ public void ProxySerialize()
+ {
+ ISession s = OpenSession();
+ IMyProxy ap = new MyProxyImpl {Id = 1, Name = "first proxy"};
+ s.Save(ap);
+ s.Flush();
+ s.Close();
+
+ s = OpenSession();
+ ap = (IMyProxy) s.Load(typeof (MyProxyImpl), ap.Id);
+ Assert.AreEqual(1, ap.Id);
+ s.Disconnect();
+
+ SerializeAndDeserialize(ref s);
+
+ s.Reconnect();
+ s.Disconnect();
+
+ // serialize and then deserialize the session again - make sure Castle.DynamicProxy
+ // has no problem with serializing two times - earlier versions of it did.
+ SerializeAndDeserialize(ref s);
+
+ s.Close();
+
+ s = OpenSession();
+ s.Delete(ap);
+ s.Flush();
+ s.Close();
+ }
+
+ [Test]
+ public void SerializeNotFoundProxy()
+ {
+ ISession s = OpenSession();
+ // this does not actually exists in db
+ var notThere = (IMyProxy) s.Load(typeof (MyProxyImpl), 5);
+ Assert.AreEqual(5, notThere.Id);
+ s.Disconnect();
+
+ // serialize and then deserialize the session.
+ SerializeAndDeserialize(ref s);
+
+ Assert.IsNotNull(s.Load(typeof (MyProxyImpl), 5), "should be proxy - even though it doesn't exists in db");
+ s.Close();
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/ProxyImpl.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/ProxyImpl.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/InterfaceProxySerializationTests/ProxyImpl.hbm.xml 2011-03-20 20:30:53 UTC (rev 5481)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.DynamicProxyTests.InterfaceProxySerializationTests">
+ <class name="MyProxyImpl" proxy="IMyProxy">
+ <id name="Id">
+ <generator class="assigned" />
+ </id>
+
+ <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 2011-03-20 20:20:35 UTC (rev 5480)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-20 20:30:53 UTC (rev 5481)
@@ -217,6 +217,9 @@
<Compile Include="DriverTest\Sql2008DateTime2Test.cs" />
<Compile Include="DriverTest\SqlClientDriverFixture.cs" />
<Compile Include="DriverTest\SqlServerCeDriverFixture.cs" />
+ <Compile Include="DynamicProxyTests\InterfaceProxySerializationTests\IMyProxy.cs" />
+ <Compile Include="DynamicProxyTests\InterfaceProxySerializationTests\MyProxyImpl.cs" />
+ <Compile Include="DynamicProxyTests\InterfaceProxySerializationTests\ProxyFixture.cs" />
<Compile Include="DynamicProxyTests\InterfaceWithEqualsGethashcodeTests.cs" />
<Compile Include="EngineTest\CallableParserFixture.cs" />
<Compile Include="EngineTest\NativeSQLQueryNonScalarReturnTest.cs" />
@@ -2466,6 +2469,7 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="DynamicProxyTests\InterfaceProxySerializationTests\ProxyImpl.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2565\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\AccessAndCorrectPropertyName\DogMapping.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\AccessAndCorrectPropertyName\PersonMapping.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-03-20 20:35:01
|
Revision: 5482
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5482&view=rev
Author: fabiomaulo
Date: 2011-03-20 20:34:55 +0000 (Sun, 20 Mar 2011)
Log Message:
-----------
"lazy-field" interceptor proxy Serializable
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/LazyFieldInterceptorSerializable.cs
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/LazyFieldInterceptorSerializable.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/LazyFieldInterceptorSerializable.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/LazyFieldInterceptorSerializable.cs 2011-03-20 20:34:55 UTC (rev 5482)
@@ -0,0 +1,37 @@
+using System;
+using Iesi.Collections.Generic;
+using NHibernate.Proxy;
+using NUnit.Framework;
+using NHibernate.Intercept;
+using SharpTestsEx;
+
+namespace NHibernate.Test.DynamicProxyTests
+{
+ public class LazyFieldInterceptorSerializable
+ {
+ [Serializable]
+ public class MyClass
+ {
+ public virtual int Id { get; set; }
+ }
+
+ [Test]
+ public void LazyFieldInterceptorMarkedAsSerializable()
+ {
+ typeof(DefaultDynamicLazyFieldInterceptor).Should().Have.Attribute<SerializableAttribute>();
+ }
+
+ [Test]
+ public void LazyFieldInterceptorIsBinarySerializable()
+ {
+ var pf = new DefaultProxyFactory();
+ var propertyInfo = typeof(MyClass).GetProperty("Id");
+ pf.PostInstantiate("MyClass", typeof(MyClass), new HashedSet<System.Type>(), propertyInfo.GetGetMethod(), propertyInfo.GetSetMethod(), null);
+ var fieldInterceptionProxy = (IFieldInterceptorAccessor)pf.GetFieldInterceptionProxy(new MyClass());
+ fieldInterceptionProxy.FieldInterceptor = new DefaultFieldInterceptor(null, null, null, "MyClass", typeof(MyClass));
+
+ fieldInterceptionProxy.Should().Be.BinarySerializable();
+ }
+
+ }
+}
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-20 20:30:53 UTC (rev 5481)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-20 20:34:55 UTC (rev 5482)
@@ -221,6 +221,7 @@
<Compile Include="DynamicProxyTests\InterfaceProxySerializationTests\MyProxyImpl.cs" />
<Compile Include="DynamicProxyTests\InterfaceProxySerializationTests\ProxyFixture.cs" />
<Compile Include="DynamicProxyTests\InterfaceWithEqualsGethashcodeTests.cs" />
+ <Compile Include="DynamicProxyTests\LazyFieldInterceptorSerializable.cs" />
<Compile Include="EngineTest\CallableParserFixture.cs" />
<Compile Include="EngineTest\NativeSQLQueryNonScalarReturnTest.cs" />
<Compile Include="EngineTest\NativeSQLQueryScalarReturnTest.cs" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-03-22 23:28:36
|
Revision: 5507
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5507&view=rev
Author: fabiomaulo
Date: 2011-03-22 23:28:30 +0000 (Tue, 22 Mar 2011)
Log Message:
-----------
Test for NH-2390 (not fixed)
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Domain.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Mappings.hbm.xml
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Domain.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Domain.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Domain.cs 2011-03-22 23:28:30 UTC (rev 5507)
@@ -0,0 +1,13 @@
+namespace NHibernate.Test.NHSpecificTest.NH2390
+{
+ public class Class1
+ {
+ public long Id { get; private set; }
+ public int Property1 { get; set; }
+ public int Property2 { get; set; }
+ public int Property3 { get; set; }
+ public int Property4 { get; set; }
+ public int Property5 { get; set; }
+ public int Version { get; private set; }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Fixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Fixture.cs 2011-03-22 23:28:30 UTC (rev 5507)
@@ -0,0 +1,63 @@
+using NUnit.Framework;
+
+namespace NHibernate.Test.NHSpecificTest.NH2390
+{
+ [Ignore("Not fixed yet")]
+ public class Fixture : BugTestCase
+ {
+ protected override void OnSetUp()
+ {
+ base.OnSetUp();
+ using (ISession s = OpenSession())
+ using (ITransaction t = s.BeginTransaction())
+ {
+ var class1 = new Class1();
+ s.Save(class1);
+ t.Commit();
+ }
+ }
+
+ protected override void OnTearDown()
+ {
+ using (ISession s = OpenSession())
+ using (ITransaction t = s.BeginTransaction())
+ {
+ s.Delete("from Class1");
+ t.Commit();
+ }
+ base.OnTearDown();
+ }
+
+ [Test]
+ public void Test()
+ {
+ var rowsUpdated = 0;
+ using (ISession s = OpenSession())
+ using (ITransaction t = s.BeginTransaction())
+ {
+ rowsUpdated = s.CreateQuery("UPDATE VERSIONED Class1 c SET c.Property1 = :value1, c.Property2 = :value2, c.Property3 = :value3, c.Property4 = :value4, c.Property5 = :value5")
+ .SetParameter("value1", 1)
+ .SetParameter("value2", 2)
+ .SetParameter("value3", 3)
+ .SetParameter("value4", 4)
+ .SetParameter("value5", 5)
+ .ExecuteUpdate();
+ t.Commit();
+ }
+
+ using (ISession s = OpenSession())
+ using (ITransaction t = s.BeginTransaction())
+ {
+ var class1 = (Class1)(s.CreateQuery("FROM Class1").UniqueResult());
+
+ Assert.That(rowsUpdated, Is.EqualTo(1), "UPDATE did not alter the expected number of rows");
+ Assert.That(class1.Property1, Is.EqualTo(1), "UPDATE did not alter Property1");
+ Assert.That(class1.Property2, Is.EqualTo(2), "UPDATE did not alter Property2");
+ Assert.That(class1.Property3, Is.EqualTo(3), "UPDATE did not alter Property3");
+ Assert.That(class1.Property4, Is.EqualTo(4), "UPDATE did not alter Property4");
+ Assert.That(class1.Property5, Is.EqualTo(5), "UPDATE did not alter Property5");
+ Assert.That(class1.Version, Is.EqualTo(2), "UPDATE did not increment the version");
+ }
+ }
+ }
+}
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Mappings.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Mappings.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2390/Mappings.hbm.xml 2011-03-22 23:28:30 UTC (rev 5507)
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping
+ xmlns="urn:nhibernate-mapping-2.2"
+ namespace="NHibernate.Test.NHSpecificTest.NH2390"
+ assembly="NHibernate.Test"
+ default-access="property"
+ default-lazy="false">
+
+ <class name="Class1">
+ <id name="Id">
+ <generator class="native" />
+ </id>
+ <version name="Version" />
+ <property name="Property1"/>
+ <property name="Property2"/>
+ <property name="Property3"/>
+ <property name="Property4"/>
+ <property name="Property5"/>
+ </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 2011-03-22 23:02:09 UTC (rev 5506)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-22 23:28:30 UTC (rev 5507)
@@ -615,6 +615,8 @@
<Compile Include="NHSpecificTest\NH2386\ResponsibleLegalPerson.cs" />
<Compile Include="NHSpecificTest\NH2386\Test.cs" />
<Compile Include="NHSpecificTest\NH2386\TradingName.cs" />
+ <Compile Include="NHSpecificTest\NH2390\Domain.cs" />
+ <Compile Include="NHSpecificTest\NH2390\Fixture.cs" />
<Compile Include="NHSpecificTest\NH2392\A.cs" />
<Compile Include="NHSpecificTest\NH2392\Fixture.cs" />
<Compile Include="NHSpecificTest\NH2392\PhoneNumber.cs" />
@@ -2477,6 +2479,7 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="NHSpecificTest\NH2390\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2491\Mappings.hbm.xml" />
<EmbeddedResource Include="Insertordering\Mapping.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2530\Mappings.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-03-24 02:50:47
|
Revision: 5516
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5516&view=rev
Author: patearl
Date: 2011-03-24 02:50:41 +0000 (Thu, 24 Mar 2011)
Log Message:
-----------
Ignore XML data tests for databases that don't support XML.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
trunk/nhibernate/src/NHibernate.Test/TypesTest/XDocTypeFixture.cs
trunk/nhibernate/src/NHibernate.Test/TypesTest/XmlDocTypeFixture.cs
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-24 02:50:00 UTC (rev 5515)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-24 02:50:41 UTC (rev 5516)
@@ -1,7 +1,9 @@
using System;
using System.Collections.Generic;
+using System.Data;
using System.Linq;
using System.Text;
+using NHibernate.SqlTypes;
namespace NHibernate.Test
{
@@ -17,10 +19,17 @@
string testDialectTypeName = "NHibernate.Test.TestDialects." + dialect.GetType().Name.Replace("Dialect", "TestDialect");
System.Type testDialectType = System.Type.GetType(testDialectTypeName);
if (testDialectType != null)
- return (TestDialect)Activator.CreateInstance(testDialectType);
- return new TestDialect();
+ return (TestDialect)Activator.CreateInstance(testDialectType, dialect);
+ return new TestDialect(dialect);
}
+ private Dialect.Dialect dialect;
+
+ public TestDialect(Dialect.Dialect dialect)
+ {
+ this.dialect = dialect;
+ }
+
public virtual bool SupportsOperatorAll { get { return true; } }
public virtual bool SupportsOperatorSome { get { return true; } }
public virtual bool SupportsLocate { get { return true; } }
@@ -35,5 +44,18 @@
public virtual bool SupportsConcurrentTransactions { get { return true; } }
public virtual bool SupportsFullJoin { get { return true; } }
+
+ public bool SupportsSqlType(SqlType sqlType)
+ {
+ try
+ {
+ dialect.GetTypeName(sqlType);
+ return true;
+ }
+ catch
+ {
+ return false;
+ }
+ }
}
}
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-24 02:50:00 UTC (rev 5515)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-24 02:50:41 UTC (rev 5516)
@@ -7,6 +7,11 @@
{
public class SQLiteTestDialect : TestDialect
{
+ public SQLiteTestDialect(Dialect.Dialect dialect)
+ : base(dialect)
+ {
+ }
+
public override bool SupportsOperatorAll
{
get { return false; }
Modified: trunk/nhibernate/src/NHibernate.Test/TypesTest/XDocTypeFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TypesTest/XDocTypeFixture.cs 2011-03-24 02:50:00 UTC (rev 5515)
+++ trunk/nhibernate/src/NHibernate.Test/TypesTest/XDocTypeFixture.cs 2011-03-24 02:50:41 UTC (rev 5516)
@@ -1,4 +1,6 @@
+using System.Data;
using System.Xml.Linq;
+using NHibernate.SqlTypes;
using NHibernate.Type;
using NUnit.Framework;
using SharpTestsEx;
@@ -13,6 +15,11 @@
get { return "XDoc"; }
}
+ protected override bool AppliesTo(Dialect.Dialect dialect)
+ {
+ return TestDialect.SupportsSqlType(new SqlType(DbType.Xml));
+ }
+
[Test]
public void ReadWrite()
{
Modified: trunk/nhibernate/src/NHibernate.Test/TypesTest/XmlDocTypeFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TypesTest/XmlDocTypeFixture.cs 2011-03-24 02:50:00 UTC (rev 5515)
+++ trunk/nhibernate/src/NHibernate.Test/TypesTest/XmlDocTypeFixture.cs 2011-03-24 02:50:41 UTC (rev 5516)
@@ -1,4 +1,6 @@
+using System.Data;
using System.Xml;
+using NHibernate.SqlTypes;
using NHibernate.Type;
using NUnit.Framework;
using SharpTestsEx;
@@ -12,6 +14,11 @@
get { return "XmlDoc"; }
}
+ protected override bool AppliesTo(Dialect.Dialect dialect)
+ {
+ return TestDialect.SupportsSqlType(new SqlType(DbType.Xml));
+ }
+
[Test]
public void ReadWrite()
{
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-03-24 18:47:48
|
Revision: 5522
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5522&view=rev
Author: patearl
Date: 2011-03-24 18:47:41 +0000 (Thu, 24 Mar 2011)
Log Message:
-----------
Made two tests ignore dialects without batchers.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1850/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/Stateless/StatelessSessionFixture.cs
Modified: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1850/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1850/Fixture.cs 2011-03-24 18:29:10 UTC (rev 5521)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1850/Fixture.cs 2011-03-24 18:47:41 UTC (rev 5522)
@@ -14,6 +14,11 @@
configuration.SetProperty(Environment.BatchSize, "1");
}
+ protected override bool AppliesTo(Dialect.Dialect dialect)
+ {
+ return dialect.SupportsSqlBatches;
+ }
+
[Test]
public void CanGetQueryDurationForDelete()
{
Modified: trunk/nhibernate/src/NHibernate.Test/Stateless/StatelessSessionFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Stateless/StatelessSessionFixture.cs 2011-03-24 18:29:10 UTC (rev 5521)
+++ trunk/nhibernate/src/NHibernate.Test/Stateless/StatelessSessionFixture.cs 2011-03-24 18:47:41 UTC (rev 5522)
@@ -183,6 +183,9 @@
[Test]
public void WhenSetTheBatchSizeThenSetTheBatchSizeOfTheBatcher()
{
+ if (!Dialect.SupportsSqlBatches)
+ Assert.Ignore("Dialect does not support sql batches.");
+
using (IStatelessSession ss = sessions.OpenStatelessSession())
{
ss.SetBatchSize(37);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-03-24 20:38:30
|
Revision: 5523
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5523&view=rev
Author: fabiomaulo
Date: 2011-03-24 20:38:23 +0000 (Thu, 24 Mar 2011)
Log Message:
-----------
NH-1323 no viable
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/CheckViability.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/Domain.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/Mappings.hbm.xml
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/CheckViability.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/CheckViability.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/CheckViability.cs 2011-03-24 20:38:23 UTC (rev 5523)
@@ -0,0 +1,202 @@
+using System;
+using NHibernate.Collection;
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.NHSpecificTest.NH1323
+{
+ [Explicit("Demonstration of not viability")]
+ public class CheckViability: BugTestCase
+ {
+ public class FullInitializedRetrievedEntity : IDisposable
+ {
+ private readonly ISessionFactory factory;
+ private readonly MyClass entity;
+
+ public FullInitializedRetrievedEntity(ISessionFactory factory)
+ {
+ this.factory = factory;
+ object savedId;
+ using (var session = factory.OpenSession())
+ using (session.BeginTransaction())
+ {
+ var entity = new MyClass();
+ entity.Children.Add(new MyChild { Parent = entity });
+ entity.Components.Add(new MyComponent { Something = "something" });
+ entity.Elements.Add("somethingelse");
+ savedId = session.Save(entity);
+ session.Transaction.Commit();
+ }
+
+ using (var session = factory.OpenSession())
+ using (session.BeginTransaction())
+ {
+ entity = session.Get<MyClass>(savedId);
+ NHibernateUtil.Initialize(entity.Children);
+ NHibernateUtil.Initialize(entity.Components);
+ NHibernateUtil.Initialize(entity.Elements);
+ session.Transaction.Commit();
+ }
+ }
+
+ public MyClass Entity
+ {
+ get { return entity; }
+ }
+
+ public void Dispose()
+ {
+ using (var s = factory.OpenSession())
+ {
+ s.Delete("from MyClass");
+ s.Flush();
+ }
+ }
+ }
+
+ [Test]
+ public void WhenReassociateCollectionUsingMergeThenReassingOwner()
+ {
+ using (var scenario = new FullInitializedRetrievedEntity(Sfi))
+ {
+ ((IPersistentCollection)scenario.Entity.Children).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Components).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Elements).Owner = null;
+
+ // When I reassociate the collections the Owner has value
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ var merged = (MyClass)session.Merge(scenario.Entity);
+ ((IPersistentCollection)merged.Children).Owner.Should().Not.Be.Null();
+ ((IPersistentCollection)merged.Components).Owner.Should().Not.Be.Null();
+ ((IPersistentCollection)merged.Elements).Owner.Should().Not.Be.Null();
+ session.Transaction.Commit();
+ }
+ }
+ }
+
+ [Test]
+ public void WhenReassociateCollectionUsingLockThenTheCommitNotThrows()
+ {
+ using (var scenario = new FullInitializedRetrievedEntity(Sfi))
+ {
+ ((IPersistentCollection)scenario.Entity.Children).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Components).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Elements).Owner = null;
+
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ // When I reassociate the collections the Owner is null
+ session.Lock(scenario.Entity, LockMode.None);
+ // If I change something in each collection, there is no problems
+ scenario.Entity.Children.Add(new MyChild { Parent = scenario.Entity });
+ scenario.Entity.Components.Add(new MyComponent { Something = "something" });
+ scenario.Entity.Elements.Add("somethingelse");
+ session.Transaction.Commit();
+ }
+
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ var fresh = session.Get<MyClass>(scenario.Entity.Id);
+ fresh.Children.Should().Have.Count.EqualTo(2);
+ fresh.Components.Should().Have.Count.EqualTo(2);
+ fresh.Elements.Should().Have.Count.EqualTo(2);
+ session.Transaction.Commit();
+ }
+ }
+ }
+
+ [Test]
+ public void WhenReassociateCollectionUsingUpdateThenTheCommitNotThrows()
+ {
+ using (var scenario = new FullInitializedRetrievedEntity(Sfi))
+ {
+ ((IPersistentCollection)scenario.Entity.Children).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Components).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Elements).Owner = null;
+
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ scenario.Entity.Children.Add(new MyChild { Parent = scenario.Entity });
+ scenario.Entity.Components.Add(new MyComponent { Something = "something" });
+ scenario.Entity.Elements.Add("somethingelse");
+ // When I reassociate the collections the Owner is null
+ session.Update(scenario.Entity);
+ session.Transaction.Commit();
+ }
+
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ var fresh = session.Get<MyClass>(scenario.Entity.Id);
+ fresh.Children.Should().Have.Count.EqualTo(2);
+ fresh.Components.Should().Have.Count.EqualTo(2);
+ fresh.Elements.Should().Have.Count.EqualTo(2);
+ session.Transaction.Commit();
+ }
+ }
+ }
+
+ [Test]
+ public void WhenReassociateCollectionUsingSaveOrUpdateThenTheCommitNotThrows()
+ {
+ using (var scenario = new FullInitializedRetrievedEntity(Sfi))
+ {
+ ((IPersistentCollection)scenario.Entity.Children).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Components).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Elements).Owner = null;
+
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ scenario.Entity.Children.Add(new MyChild { Parent = scenario.Entity });
+ scenario.Entity.Components.Add(new MyComponent { Something = "something" });
+ scenario.Entity.Elements.Add("somethingelse");
+ // When I reassociate the collections the Owner is null
+ session.SaveOrUpdate(scenario.Entity);
+ session.Transaction.Commit();
+ }
+
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ var fresh = session.Get<MyClass>(scenario.Entity.Id);
+ fresh.Children.Should().Have.Count.EqualTo(2);
+ fresh.Components.Should().Have.Count.EqualTo(2);
+ fresh.Elements.Should().Have.Count.EqualTo(2);
+ session.Transaction.Commit();
+ }
+ }
+ }
+
+ [Test]
+ public void WhenReassociateCollectionUsingDeleteThenTheCommitNotThrows()
+ {
+ using (var scenario = new FullInitializedRetrievedEntity(Sfi))
+ {
+ ((IPersistentCollection)scenario.Entity.Children).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Components).Owner = null;
+ ((IPersistentCollection)scenario.Entity.Elements).Owner = null;
+
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ session.Delete(scenario.Entity);
+ session.Transaction.Commit();
+ }
+
+ using (var session = OpenSession())
+ using (session.BeginTransaction())
+ {
+ var fresh = session.Get<MyClass>(scenario.Entity.Id);
+ fresh.Should().Be.Null();
+ session.Transaction.Commit();
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/Domain.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/Domain.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/Domain.cs 2011-03-24 20:38:23 UTC (rev 5523)
@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+
+namespace NHibernate.Test.NHSpecificTest.NH1323
+{
+ [Serializable]
+ public class MyClass
+ {
+ public MyClass()
+ {
+ Children = new List<MyChild>();
+ Components = new List<MyComponent>();
+ Elements = new List<string>();
+ }
+ public virtual string Description { get; set; }
+ public virtual Guid Id { get; set; }
+ public virtual IList<MyChild> Children { get; set; }
+ public virtual IList<MyComponent> Components { get; set; }
+ public virtual IList<string> Elements { get; set; }
+ }
+
+ [Serializable]
+ public class MyChild
+ {
+ public virtual Guid Id { get; set; }
+ public virtual MyClass Parent { get; set; }
+ }
+
+ [Serializable]
+ public class MyComponent
+ {
+ public virtual string Something { get; set; }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/Mappings.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/Mappings.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1323/Mappings.hbm.xml 2011-03-24 20:38:23 UTC (rev 5523)
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:nhibernate-mapping-2.2"
+ namespace="NHibernate.Test.NHSpecificTest.NH1323"
+ assembly="NHibernate.Test">
+ <class name="MyClass">
+ <id name="Id" type="Guid">
+ <generator class="guid.comb" />
+ </id>
+ <property name="Description" />
+ <bag name="Children" inverse="true" cascade="all,delete-orphan">
+ <key column="ParentId" on-delete="cascade" />
+ <one-to-many class="MyChild" />
+ </bag>
+ <bag name="Components" table="MyClassComponents">
+ <key column="MyClassId" />
+ <composite-element class="MyComponent">
+ <property name="Something" />
+ </composite-element>
+ </bag>
+ <bag name="Elements" table="MyClassElements">
+ <key column="MyClassId" />
+ <element column="ElementsElement" type="String" />
+ </bag>
+ </class>
+ <class name="MyChild">
+ <id name="Id" type="Guid">
+ <generator class="guid.comb" />
+ </id>
+ <many-to-one name="Parent" column="ParentId" />
+ </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 2011-03-24 18:47:41 UTC (rev 5522)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-24 20:38:23 UTC (rev 5523)
@@ -524,6 +524,8 @@
<Compile Include="NHSpecificTest\NH1136\Person.cs" />
<Compile Include="NHSpecificTest\NH1136\ReverseSortComparer.cs" />
<Compile Include="NHSpecificTest\NH1136\TemporalAddressType.cs" />
+ <Compile Include="NHSpecificTest\NH1323\CheckViability.cs" />
+ <Compile Include="NHSpecificTest\NH1323\Domain.cs" />
<Compile Include="NHSpecificTest\NH1421\AnEntity.cs" />
<Compile Include="NHSpecificTest\NH1421\Fixture.cs" />
<Compile Include="NHSpecificTest\NH1836\Entity.cs" />
@@ -2484,6 +2486,7 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="NHSpecificTest\NH1323\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2580\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2390\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2491\Mappings.hbm.xml" />
@@ -2879,7 +2882,6 @@
<EmbeddedResource Include="DynamicEntity\Tuplizer\Customer.hbm.xml" />
</ItemGroup>
<ItemGroup>
- <Folder Include="NHSpecificTest\NH2554" />
<Folder Include="Properties\" />
</ItemGroup>
<ItemGroup>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-03-24 21:08:01
|
Revision: 5524
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5524&view=rev
Author: fabiomaulo
Date: 2011-03-24 21:07:55 +0000 (Thu, 24 Mar 2011)
Log Message:
-----------
Passing tests for NH-2527 using no-batcher
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/FixtureWithNoBatcher.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/Mappings.hbm.xml
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/Model.cs
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/FixtureWithNoBatcher.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/FixtureWithNoBatcher.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/FixtureWithNoBatcher.cs 2011-03-24 21:07:55 UTC (rev 5524)
@@ -0,0 +1,78 @@
+using NHibernate.AdoNet;
+using NHibernate.Cfg.Loquacious;
+using NUnit.Framework;
+
+namespace NHibernate.Test.NHSpecificTest.NH2527
+{
+ public class FixtureWithNoBatcher : BugTestCase
+ {
+
+ protected override void Configure(Cfg.Configuration configuration)
+ {
+ configuration.DataBaseIntegration(x =>
+ {
+ x.BatchSize = 0;
+ x.Batcher<NonBatchingBatcherFactory>();
+ });
+ }
+
+ protected override void OnSetUp()
+ {
+ base.OnSetUp();
+
+ using (ISession session = OpenSession())
+ {
+ using (ITransaction tx = session.BeginTransaction())
+ {
+ var parent = new Parent();
+ var childOne = new Child();
+ parent.Childs.Add(childOne);
+ session.Save(parent);
+
+ tx.Commit();
+ }
+ }
+ }
+
+ protected override void OnTearDown()
+ {
+ base.OnTearDown();
+
+ using (ISession session = OpenSession())
+ {
+ using (ITransaction tx = session.BeginTransaction())
+ {
+ session.Delete("from Child");
+ session.Delete("from Parent");
+ tx.Commit();
+ }
+ }
+ }
+
+ [Test]
+ public void DisposedCommandShouldNotBeReused()
+ {
+ using (ISession session = OpenSession())
+ {
+ using (ITransaction tx = session.BeginTransaction())
+ {
+ var parent = session.CreateCriteria<Parent>().UniqueResult<Parent>();
+
+ Child childOne = parent.Childs[0];
+
+ var childTwo = new Child();
+ parent.Childs.Add(childTwo);
+
+ Child childToMove = parent.Childs[1];
+ parent.Childs.RemoveAt(1);
+ parent.Childs.Insert(0, childToMove);
+
+ Assert.DoesNotThrow(() => { tx.Commit(); });
+
+ Assert.AreEqual(childTwo.Id, parent.Childs[0].Id);
+ Assert.AreEqual(childOne.Id, parent.Childs[1].Id);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/Mappings.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/Mappings.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/Mappings.hbm.xml 2011-03-24 21:07:55 UTC (rev 5524)
@@ -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.NHSpecificTest.NH2527">
+ <class name="Parent">
+ <id name="Id">
+ <generator class="guid" />
+ </id>
+ <list name="Childs" cascade="all-delete-orphan" fetch="subselect">
+ <key column="parent_id" />
+ <index column="pos" />
+ <one-to-many class="Child" />
+ </list>
+ </class>
+
+ <class name="Child">
+ <id name="Id">
+ <generator class="guid" />
+ </id>
+ </class>
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/Model.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/Model.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2527/Model.cs 2011-03-24 21:07:55 UTC (rev 5524)
@@ -0,0 +1,17 @@
+namespace NHibernate.Test.NHSpecificTest.NH2527 {
+ using System;
+ using System.Collections.Generic;
+
+ public class Parent {
+ public Parent() {
+ Childs = new List<Child>();
+ }
+
+ public virtual Guid Id { get; set; }
+ public virtual IList<Child> Childs { get; set; }
+ }
+
+ public class Child {
+ public virtual Guid Id { get; set; }
+ }
+}
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-24 20:38:23 UTC (rev 5523)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-24 21:07:55 UTC (rev 5524)
@@ -655,6 +655,8 @@
<Compile Include="NHSpecificTest\NH2491\Fixture.cs" />
<Compile Include="NHSpecificTest\NH2507\Animal.cs" />
<Compile Include="NHSpecificTest\NH2507\Fixture.cs" />
+ <Compile Include="NHSpecificTest\NH2527\FixtureWithNoBatcher.cs" />
+ <Compile Include="NHSpecificTest\NH2527\Model.cs" />
<Compile Include="NHSpecificTest\NH2530\Domain.cs" />
<Compile Include="NHSpecificTest\NH2530\Fixture.cs" />
<Compile Include="NHSpecificTest\NH2554\Fixture.cs" />
@@ -2486,6 +2488,7 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="NHSpecificTest\NH2527\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH1323\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2580\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2390\Mappings.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-03-24 22:51:52
|
Revision: 5526
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5526&view=rev
Author: fabiomaulo
Date: 2011-03-24 22:51:46 +0000 (Thu, 24 Mar 2011)
Log Message:
-----------
Passing test of NH-1925 (was an issue but was fixed fixing something else)
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Mappings.hbm.xml
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Model.cs
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Fixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Fixture.cs 2011-03-24 22:51:46 UTC (rev 5526)
@@ -0,0 +1,101 @@
+using System.Collections;
+using NUnit.Framework;
+
+namespace NHibernate.Test.NHSpecificTest.NH1925
+{
+ [TestFixture]
+ public class Fixture : BugTestCase
+ {
+ private const string NAME_JOE = "Joe";
+ private const string NAME_ALLEN = "Allen";
+
+ protected override void OnSetUp()
+ {
+ base.OnSetUp();
+ using (ISession session = OpenSession())
+ {
+ using (ITransaction tx = session.BeginTransaction())
+ {
+ var joe = new Customer {Name = NAME_JOE};
+ session.Save(joe);
+
+ var allen = new Customer {Name = NAME_ALLEN};
+ session.Save(allen);
+
+ var joeInvoice0 = new Invoice {Customer = joe, Number = 0};
+ session.Save(joeInvoice0);
+
+ var allenInvoice1 = new Invoice {Customer = allen, Number = 1};
+ session.Save(allenInvoice1);
+
+ tx.Commit();
+ }
+ }
+ }
+
+ protected override void OnTearDown()
+ {
+ using (ISession session = OpenSession())
+ {
+ using (ITransaction tx = session.BeginTransaction())
+ {
+ session.Delete("from Invoice");
+ session.Delete("from Customer");
+ tx.Commit();
+ }
+ }
+ base.OnTearDown();
+ }
+
+ private void FindJoesLatestInvoice(string hql)
+ {
+ using (ISession session = OpenSession())
+ {
+ using (ITransaction tx = session.BeginTransaction())
+ {
+ IList list = session.CreateQuery(hql)
+ .SetString("name", NAME_JOE)
+ .List();
+
+ Assert.That(list, Is.Not.Empty);
+ tx.Commit();
+ }
+ }
+ }
+
+ [Test]
+ public void Query1()
+ {
+ FindJoesLatestInvoice(
+ @"
+ select invoice
+ from Invoice invoice
+ join invoice.Customer customer
+ where
+ invoice.Number = (
+ select max(invoice2.Number)
+ from
+ invoice.Customer d2
+ join d2.Invoices invoice2
+ where
+ d2 = customer
+ )
+ and customer.Name = :name
+ ");
+ }
+
+ [Test]
+ public void Query2()
+ {
+ FindJoesLatestInvoice(
+ @"
+ select invoice
+ from Invoice invoice
+ join invoice.Customer customer
+ where
+ invoice.Number = (select max(invoice2.Number) from customer.Invoices invoice2)
+ and customer.Name = :name
+ ");
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Mappings.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Mappings.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Mappings.hbm.xml 2011-03-24 22:51:46 UTC (rev 5526)
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.NHSpecificTest.NH1925">
+
+ <class name="Customer" >
+ <id name="ID" type="Int32">
+ <generator class="hilo" />
+ </id>
+ <property name="Name" type="String" />
+
+ <set name="Invoices" inverse="true" >
+ <key column="CustomerID"/>
+ <one-to-many class="Invoice"/>
+ </set>
+ </class>
+
+ <class name="Invoice">
+ <id name="ID" type="Int32">
+ <generator class="hilo" />
+ </id>
+
+ <property name="Number" type="Int32" />
+ <many-to-one name="Customer" column="CustomerID" class="Customer" />
+ </class>
+
+</hibernate-mapping>
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Model.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Model.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH1925/Model.cs 2011-03-24 22:51:46 UTC (rev 5526)
@@ -0,0 +1,18 @@
+using Iesi.Collections.Generic;
+
+namespace NHibernate.Test.NHSpecificTest.NH1925
+{
+ public class Customer
+ {
+ public virtual int ID { get; private set; }
+ public virtual ISet<Invoice> Invoices { get; set; }
+ public virtual string Name { get; set; }
+ }
+
+ public class Invoice
+ {
+ public virtual int ID { get; private set; }
+ public virtual Customer Customer { get; set; }
+ public virtual int Number { get; set; }
+ }
+}
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-24 21:46:41 UTC (rev 5525)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-24 22:51:46 UTC (rev 5526)
@@ -533,6 +533,8 @@
<Compile Include="NHSpecificTest\NH1836\Fixture.cs" />
<Compile Include="NHSpecificTest\NH1869\Entities.cs" />
<Compile Include="NHSpecificTest\NH1869\Fixture.cs" />
+ <Compile Include="NHSpecificTest\NH1925\Fixture.cs" />
+ <Compile Include="NHSpecificTest\NH1925\Model.cs" />
<Compile Include="NHSpecificTest\NH2037\Domain.cs" />
<Compile Include="NHSpecificTest\NH2037\Fixture.cs" />
<Compile Include="NHSpecificTest\NH2043\Domain.cs" />
@@ -2488,6 +2490,7 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="NHSpecificTest\NH1925\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2527\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH1323\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2580\Mappings.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-03-26 16:27:46
|
Revision: 5541
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5541&view=rev
Author: fabiomaulo
Date: 2011-03-26 16:27:40 +0000 (Sat, 26 Mar 2011)
Log Message:
-----------
Test for NH-2602 (fixed)
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/Subselect/
trunk/nhibernate/src/NHibernate.Test/Subselect/Beings.hbm.xml
trunk/nhibernate/src/NHibernate.Test/Subselect/ClassSubselectFixture.cs
trunk/nhibernate/src/NHibernate.Test/Subselect/Domain.cs
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-26 16:01:36 UTC (rev 5540)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-03-26 16:27:40 UTC (rev 5541)
@@ -695,6 +695,8 @@
<Compile Include="ReadOnly\StudentDto.cs" />
<Compile Include="ReadOnly\TextHolder.cs" />
<Compile Include="ReadOnly\VersionedNode.cs" />
+ <Compile Include="Subselect\ClassSubselectFixture.cs" />
+ <Compile Include="Subselect\Domain.cs" />
<Compile Include="TestDialect.cs" />
<Compile Include="TestDialects\SQLiteTestDialect.cs" />
<Compile Include="TypesTest\CharClass.cs" />
@@ -2494,6 +2496,7 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="Subselect\Beings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2488\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2490\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH1925\Mappings.hbm.xml" />
Added: trunk/nhibernate/src/NHibernate.Test/Subselect/Beings.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Subselect/Beings.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/Subselect/Beings.hbm.xml 2011-03-26 16:27:40 UTC (rev 5541)
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!--
+
+ This mapping demonstrates
+
+ (1) use of a class-to-subselect mapping, that allows data
+ defined in other classes to be exposed as a read-only
+ entity (you would do this if you really wanted a view,
+ but didn't or couldn't define one for some reason)
+ This is a "derived entity" mapping.
+
+ (2) use of <synchronize/> to ensure that auto-flush happens
+ correctly, and that queries against the derived entity
+ do not return stale data
+
+-->
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ namespace="NHibernate.Test.Subselect"
+ assembly="NHibernate.Test">
+
+ <class name="Human" table="Humans">
+ <id name="Id" column="bid">
+ <generator class="hilo"/>
+ </id>
+
+ <property name="Name" not-null="true"/>
+ <property name="Sex" not-null="true" update="false"/>
+ <property name="Address"/>
+ </class>
+
+ <class name="Alien" table="Aliens">
+ <id name="Id" column="bid">
+ <generator class="hilo"/>
+ </id>
+ <property name="Identity" not-null="true" column="ident"/>
+ <property name="Planet"/>
+ <property name="Species" not-null="true" update="false"/>
+
+ </class>
+
+ <class name="Being" mutable="false">
+ <subselect>
+ select bid, name as ident, address as loc, 'human' as species
+ from humans
+ union
+ select bid, ident, planet as loc, species
+ from aliens
+ </subselect>
+
+ <synchronize table="Humans"/>
+ <synchronize table="Aliens"/>
+
+ <id name="Id" column="bid">
+ <generator class="native"/>
+ </id>
+
+ <property name="Identity" column="ident"/>
+ <property name="Location" column="loc"/>
+ <property name="Species"/>
+ </class>
+
+</hibernate-mapping>
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/Subselect/ClassSubselectFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Subselect/ClassSubselectFixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/Subselect/ClassSubselectFixture.cs 2011-03-26 16:27:40 UTC (rev 5541)
@@ -0,0 +1,62 @@
+using System.Collections;
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.Subselect
+{
+ public class ClassSubselectFixture: TestCase
+ {
+ protected override IList Mappings
+ {
+ get { return new[] {"Subselect.Beings.hbm.xml"}; }
+ }
+
+ protected override string MappingsAssembly
+ {
+ get { return "NHibernate.Test"; }
+ }
+
+ [Test]
+ public void EntitySubselect()
+ {
+ var s = OpenSession();
+ var t = s.BeginTransaction();
+ Human gavin = new Human();
+ gavin.Name = "gavin";
+ gavin.Sex = 'M';
+ gavin.Address = "Melbourne, Australia";
+ Alien x23y4 = new Alien();
+ x23y4.Identity = "x23y4$$hu%3";
+ x23y4.Planet = "Mars";
+ x23y4.Species = "martian";
+ s.Save(gavin);
+ s.Save(x23y4);
+ s.Flush();
+ var beings = s.CreateQuery("from Being").List<Being>();
+ beings.Should().Have.Count.GreaterThan(0);
+ foreach (var being in beings)
+ {
+ being.Location.Should().Not.Be.NullOrEmpty();
+ being.Identity.Should().Not.Be.NullOrEmpty();
+ being.Species.Should().Not.Be.NullOrEmpty();
+ }
+ s.Clear();
+ Sfi.Evict(typeof (Being));
+ Being gav = s.Get<Being>(gavin.Id);
+ gav.Location.Should().Not.Be.NullOrEmpty();
+ gav.Identity.Should().Not.Be.NullOrEmpty();
+ gav.Species.Should().Not.Be.NullOrEmpty();
+ s.Clear();
+ //test the <synchronized> tag:
+ gavin = s.Get<Human>(gavin.Id);
+ gavin.Address = "Atlanta, GA";
+ gav = s.CreateQuery("from Being b where b.Location like '%GA%'").UniqueResult<Being>();
+ gav.Location.Should().Be(gavin.Address);
+ s.Delete(gavin);
+ s.Delete(x23y4);
+ s.CreateQuery("from Being").List<Being>().Should().Be.Empty();
+ t.Commit();
+ s.Close();
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/Subselect/Domain.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Subselect/Domain.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/Subselect/Domain.cs 2011-03-26 16:27:40 UTC (rev 5541)
@@ -0,0 +1,26 @@
+namespace NHibernate.Test.Subselect
+{
+ public class Human
+ {
+ public virtual int Id { get; set; }
+ public virtual char Sex { get; set; }
+ public virtual string Name { get; set; }
+ public virtual string Address { get; set; }
+ }
+
+ public class Alien
+ {
+ public virtual int Id { get; set; }
+ public virtual string Identity { get; set; }
+ public virtual string Planet { get; set; }
+ public virtual string Species { get; set; }
+ }
+
+ public class Being
+ {
+ public virtual int Id { get; set; }
+ public virtual string Identity { get; set; }
+ public virtual string Location { get; set; }
+ public virtual string Species { get; set; }
+ }
+}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-03-27 02:18:12
|
Revision: 5547
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5547&view=rev
Author: patearl
Date: 2011-03-27 02:18:06 +0000 (Sun, 27 Mar 2011)
Log Message:
-----------
Ignore a broken decimal test on SQLite, adding an appropriate disappointing flag to TestDialect.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
trunk/nhibernate/src/NHibernate.Test/Unionsubclass2/UnionSubclassFixture.cs
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-27 00:18:24 UTC (rev 5546)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-27 02:18:06 UTC (rev 5547)
@@ -45,6 +45,8 @@
public virtual bool SupportsFullJoin { get { return true; } }
+ public virtual bool HasBrokenDecimalType { get { return false; } }
+
public bool SupportsSqlType(SqlType sqlType)
{
try
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-27 00:18:24 UTC (rev 5546)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialects/SQLiteTestDialect.cs 2011-03-27 02:18:06 UTC (rev 5547)
@@ -41,5 +41,10 @@
{
get { return false; }
}
+
+ public override bool HasBrokenDecimalType
+ {
+ get { return true; }
+ }
}
}
Modified: trunk/nhibernate/src/NHibernate.Test/Unionsubclass2/UnionSubclassFixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/Unionsubclass2/UnionSubclassFixture.cs 2011-03-27 00:18:24 UTC (rev 5546)
+++ trunk/nhibernate/src/NHibernate.Test/Unionsubclass2/UnionSubclassFixture.cs 2011-03-27 02:18:06 UTC (rev 5547)
@@ -114,11 +114,14 @@
result = s.CreateQuery("from Person p where p.salary > 100 or p.name like 'E%'").List();
Assert.AreEqual(2, result.Count);
- result = s.CreateCriteria(typeof(Person)).Add(Property.ForName("salary").Gt(100m)).List();
- Assert.AreEqual(1, result.Count);
- Assert.AreSame(q, result[0]);
+ if (!TestDialect.HasBrokenDecimalType)
+ {
+ result = s.CreateCriteria(typeof (Person)).Add(Property.ForName("salary").Gt(100m)).List();
+ Assert.AreEqual(1, result.Count);
+ Assert.AreSame(q, result[0]);
+ }
- result = s.CreateQuery("select p.salary from Person p where p.salary > 100").List();
+ result = s.CreateQuery("select p.salary from Person p where p.salary > 100").List();
Assert.AreEqual(1, result.Count);
Assert.AreEqual(1000m, (decimal)result[0]);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-03-28 15:15:31
|
Revision: 5564
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5564&view=rev
Author: patearl
Date: 2011-03-28 15:15:24 +0000 (Mon, 28 Mar 2011)
Log Message:
-----------
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/TestDialects/PostgreSQL82TestDialect.cs
Modified: trunk/nhibernate/src/NHibernate.Test/TestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-28 05:23:57 UTC (rev 5563)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialect.cs 2011-03-28 15:15:24 UTC (rev 5564)
@@ -47,6 +47,8 @@
public virtual bool HasBrokenDecimalType { get { return false; } }
+ public virtual bool SupportsSelectForUpdateOnOuterJoin { get { return true; } }
+
public bool SupportsSqlType(SqlType sqlType)
{
try
Added: trunk/nhibernate/src/NHibernate.Test/TestDialects/PostgreSQL82TestDialect.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestDialects/PostgreSQL82TestDialect.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/TestDialects/PostgreSQL82TestDialect.cs 2011-03-28 15:15:24 UTC (rev 5564)
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace NHibernate.Test.TestDialects
+{
+ public class PostgreSQL82TestDialect : TestDialect
+ {
+ public PostgreSQL82TestDialect(Dialect.Dialect dialect)
+ : base(dialect)
+ {
+ }
+
+ public override bool SupportsSelectForUpdateOnOuterJoin
+ {
+ get { return false; }
+ }
+ }
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-04-03 14:46:25
|
Revision: 5593
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5593&view=rev
Author: fabiomaulo
Date: 2011-04-03 14:46:14 +0000 (Sun, 03 Apr 2011)
Log Message:
-----------
Minor (reorganized namespace)
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/
trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/BasicMappingOfSimpleClass.cs
trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/ColumnsNamingConvetions.cs
trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/MappingOfPrivateMembersOnRootEntity.cs
Removed Paths:
-------------
trunk/nhibernate/src/NHibernate.Test/MappingByCode/BasicMappingOfSimpleClass.cs
trunk/nhibernate/src/NHibernate.Test/MappingByCode/ColumnsNamingConvetions.cs
trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappingOfPrivateMembersOnRootEntity.cs
Deleted: trunk/nhibernate/src/NHibernate.Test/MappingByCode/BasicMappingOfSimpleClass.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/MappingByCode/BasicMappingOfSimpleClass.cs 2011-04-03 14:03:09 UTC (rev 5592)
+++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/BasicMappingOfSimpleClass.cs 2011-04-03 14:46:14 UTC (rev 5593)
@@ -1,98 +0,0 @@
-using System.Linq;
-using NHibernate.Cfg.MappingSchema;
-using NHibernate.Mapping.ByCode;
-using NHibernate.Mapping.ByCode.Impl;
-using NUnit.Framework;
-using SharpTestsEx;
-
-namespace NHibernate.Test.MappingByCode
-{
- public class BasicMappingOfSimpleClass
- {
- public class MyClass
- {
- public int Id { get; set; }
- public string Something { get; set; }
- }
-
- [Test]
- public void MapClassWithIdAndProperty()
- {
- var mapper = new ModelMapper();
- mapper.Class<MyClass>(ca =>
- {
- ca.Id(x => x.Id, map =>
- {
- map.Column("MyClassId");
- map.Generator(Generators.HighLow, gmap => gmap.Params(new { max_low = 100 }));
- });
- ca.Property(x => x.Something, map => map.Length(150));
- });
- var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
- ModelIsWellFormed(hbmMapping);
- }
-
- [Test]
- public void WhenDuplicatePropertiesDoesNotDuplicateMapping()
- {
- var mapper = new ModelMapper();
- mapper.Class<MyClass>(ca =>
- {
- ca.Id(x => x.Id, map =>
- {
- map.Column("MyClassId");
- });
- ca.Id(x => x.Id, map =>
- {
- map.Generator(Generators.HighLow, gmap => gmap.Params(new { max_low = 100 }));
- });
- ca.Property(x => x.Something);
- ca.Property(x => x.Something, map => map.Length(150));
- });
- var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
- ModelIsWellFormed(hbmMapping);
- }
-
- [Test]
- public void WhenDuplicateClassDoesNotDuplicateMapping()
- {
- var mapper = new ModelMapper();
- mapper.Class<MyClass>(ca =>
- {
- ca.Id(x => x.Id, map =>
- {
- map.Generator(Generators.HighLow, gmap => gmap.Params(new { max_low = 100 }));
- });
- ca.Property(x => x.Something);
- });
-
- mapper.Class<MyClass>(ca =>
- {
- ca.Id(x => x.Id, map =>
- {
- map.Column("MyClassId");
- });
- ca.Property(x => x.Something, map => map.Length(150));
- });
- var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
- ModelIsWellFormed(hbmMapping);
- }
-
- private void ModelIsWellFormed(HbmMapping hbmMapping)
- {
- var hbmClass = hbmMapping.RootClasses[0];
- hbmClass.Should().Not.Be.Null();
- var hbmId = hbmClass.Id;
- hbmId.Should().Not.Be.Null();
- hbmId.name.Should().Be("Id");
- var hbmGenerator = hbmId.generator;
- hbmGenerator.Should().Not.Be.Null();
- hbm...@cl...().Be("hilo");
- hbmGenerator.param[0].name.Should().Be("max_low");
- hbmGenerator.param[0].GetText().Should().Be("100");
- var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single();
- hbmProperty.name.Should().Be("Something");
- hbmProperty.length.Should().Be("150");
- }
- }
-}
\ No newline at end of file
Deleted: trunk/nhibernate/src/NHibernate.Test/MappingByCode/ColumnsNamingConvetions.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ColumnsNamingConvetions.cs 2011-04-03 14:03:09 UTC (rev 5592)
+++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/ColumnsNamingConvetions.cs 2011-04-03 14:46:14 UTC (rev 5593)
@@ -1,67 +0,0 @@
-using System.Linq;
-using NHibernate.Cfg.MappingSchema;
-using NHibernate.Mapping.ByCode;
-using NUnit.Framework;
-using SharpTestsEx;
-
-namespace NHibernate.Test.MappingByCode
-{
- public class ColumnsNamingConvetions
- {
- public class MyClass
- {
- public int Id { get; set; }
- public string Something { get; set; }
- }
-
- [Test]
- public void MapClassWithConventions()
- {
- var mapper = new ModelMapper();
-
- mapper.BeforeMapClass +=
- (mi, t, map) => map.Id(x => x.Column((t.Name+"id").ToUpper()));
- mapper.BeforeMapProperty +=
- (mi, propertyPath, map) => map.Column(propertyPath.ToColumnName().ToUpper());
-
- mapper.Class<MyClass>(ca =>
- {
- ca.Id(x => x.Id, map => { });
- ca.Property(x => x.Something);
- });
- var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
-
- var hbmClass = hbmMapping.RootClasses[0];
- hbmClass.Should().Not.Be.Null();
- var hbmId = hbmClass.Id;
- hbmId.column1.Should().Be("MYCLASSID");
- var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single();
- hbmProperty.column.Should().Be("SOMETHING");
- }
-
- [Test]
- public void MapClassWithHardConventions()
- {
- var mapper = new ModelMapper();
-
- mapper.AfterMapClass +=
- (mi, t, map) => map.Id(x => x.Column((t.Name + "id").ToUpper()));
- mapper.AfterMapProperty +=
- (mi, propertyPath, map) => map.Column(propertyPath.ToColumnName().ToUpper());
-
- mapper.Class<MyClass>(ca =>
- {
- ca.Id(x => x.Id, map => map.Column("Whatever"));
- ca.Property(x => x.Something, map => map.Column("Whatever"));
- });
- var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
-
- var hbmClass = hbmMapping.RootClasses[0];
- hbmClass.Should().Not.Be.Null();
- var hbmId = hbmClass.Id;
- hbmId.column1.Should().Be("MYCLASSID");
- var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single();
- hbmProperty.column.Should().Be("SOMETHING");
- }
- }
-}
\ No newline at end of file
Copied: trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/BasicMappingOfSimpleClass.cs (from rev 5587, trunk/nhibernate/src/NHibernate.Test/MappingByCode/BasicMappingOfSimpleClass.cs)
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/BasicMappingOfSimpleClass.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/BasicMappingOfSimpleClass.cs 2011-04-03 14:46:14 UTC (rev 5593)
@@ -0,0 +1,97 @@
+using System.Linq;
+using NHibernate.Cfg.MappingSchema;
+using NHibernate.Mapping.ByCode;
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.MappingByCode.ExpliticMappingTests
+{
+ public class BasicMappingOfSimpleClass
+ {
+ public class MyClass
+ {
+ public int Id { get; set; }
+ public string Something { get; set; }
+ }
+
+ [Test]
+ public void MapClassWithIdAndProperty()
+ {
+ var mapper = new ModelMapper();
+ mapper.Class<MyClass>(ca =>
+ {
+ ca.Id(x => x.Id, map =>
+ {
+ map.Column("MyClassId");
+ map.Generator(Generators.HighLow, gmap => gmap.Params(new { max_low = 100 }));
+ });
+ ca.Property(x => x.Something, map => map.Length(150));
+ });
+ var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
+ ModelIsWellFormed(hbmMapping);
+ }
+
+ [Test]
+ public void WhenDuplicatePropertiesDoesNotDuplicateMapping()
+ {
+ var mapper = new ModelMapper();
+ mapper.Class<MyClass>(ca =>
+ {
+ ca.Id(x => x.Id, map =>
+ {
+ map.Column("MyClassId");
+ });
+ ca.Id(x => x.Id, map =>
+ {
+ map.Generator(Generators.HighLow, gmap => gmap.Params(new { max_low = 100 }));
+ });
+ ca.Property(x => x.Something);
+ ca.Property(x => x.Something, map => map.Length(150));
+ });
+ var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
+ ModelIsWellFormed(hbmMapping);
+ }
+
+ [Test]
+ public void WhenDuplicateClassDoesNotDuplicateMapping()
+ {
+ var mapper = new ModelMapper();
+ mapper.Class<MyClass>(ca =>
+ {
+ ca.Id(x => x.Id, map =>
+ {
+ map.Generator(Generators.HighLow, gmap => gmap.Params(new { max_low = 100 }));
+ });
+ ca.Property(x => x.Something);
+ });
+
+ mapper.Class<MyClass>(ca =>
+ {
+ ca.Id(x => x.Id, map =>
+ {
+ map.Column("MyClassId");
+ });
+ ca.Property(x => x.Something, map => map.Length(150));
+ });
+ var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
+ ModelIsWellFormed(hbmMapping);
+ }
+
+ private void ModelIsWellFormed(HbmMapping hbmMapping)
+ {
+ var hbmClass = hbmMapping.RootClasses[0];
+ hbmClass.Should().Not.Be.Null();
+ var hbmId = hbmClass.Id;
+ hbmId.Should().Not.Be.Null();
+ hbmId.name.Should().Be("Id");
+ var hbmGenerator = hbmId.generator;
+ hbmGenerator.Should().Not.Be.Null();
+ hbm...@cl...().Be("hilo");
+ hbmGenerator.param[0].name.Should().Be("max_low");
+ hbmGenerator.param[0].GetText().Should().Be("100");
+ var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single();
+ hbmProperty.name.Should().Be("Something");
+ hbmProperty.length.Should().Be("150");
+ }
+ }
+}
\ No newline at end of file
Copied: trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/ColumnsNamingConvetions.cs (from rev 5587, trunk/nhibernate/src/NHibernate.Test/MappingByCode/ColumnsNamingConvetions.cs)
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/ColumnsNamingConvetions.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/ColumnsNamingConvetions.cs 2011-04-03 14:46:14 UTC (rev 5593)
@@ -0,0 +1,67 @@
+using System.Linq;
+using NHibernate.Cfg.MappingSchema;
+using NHibernate.Mapping.ByCode;
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.MappingByCode.ExpliticMappingTests
+{
+ public class ColumnsNamingConvetions
+ {
+ public class MyClass
+ {
+ public int Id { get; set; }
+ public string Something { get; set; }
+ }
+
+ [Test]
+ public void MapClassWithConventions()
+ {
+ var mapper = new ModelMapper();
+
+ mapper.BeforeMapClass +=
+ (mi, t, map) => map.Id(x => x.Column((t.Name+"id").ToUpper()));
+ mapper.BeforeMapProperty +=
+ (mi, propertyPath, map) => map.Column(propertyPath.ToColumnName().ToUpper());
+
+ mapper.Class<MyClass>(ca =>
+ {
+ ca.Id(x => x.Id, map => { });
+ ca.Property(x => x.Something);
+ });
+ var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
+
+ var hbmClass = hbmMapping.RootClasses[0];
+ hbmClass.Should().Not.Be.Null();
+ var hbmId = hbmClass.Id;
+ hbmId.column1.Should().Be("MYCLASSID");
+ var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single();
+ hbmProperty.column.Should().Be("SOMETHING");
+ }
+
+ [Test]
+ public void MapClassWithHardConventions()
+ {
+ var mapper = new ModelMapper();
+
+ mapper.AfterMapClass +=
+ (mi, t, map) => map.Id(x => x.Column((t.Name + "id").ToUpper()));
+ mapper.AfterMapProperty +=
+ (mi, propertyPath, map) => map.Column(propertyPath.ToColumnName().ToUpper());
+
+ mapper.Class<MyClass>(ca =>
+ {
+ ca.Id(x => x.Id, map => map.Column("Whatever"));
+ ca.Property(x => x.Something, map => map.Column("Whatever"));
+ });
+ var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
+
+ var hbmClass = hbmMapping.RootClasses[0];
+ hbmClass.Should().Not.Be.Null();
+ var hbmId = hbmClass.Id;
+ hbmId.column1.Should().Be("MYCLASSID");
+ var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single();
+ hbmProperty.column.Should().Be("SOMETHING");
+ }
+ }
+}
\ No newline at end of file
Copied: trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/MappingOfPrivateMembersOnRootEntity.cs (from rev 5587, trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappingOfPrivateMembersOnRootEntity.cs)
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/MappingOfPrivateMembersOnRootEntity.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/ExpliticMappingTests/MappingOfPrivateMembersOnRootEntity.cs 2011-04-03 14:46:14 UTC (rev 5593)
@@ -0,0 +1,48 @@
+using System.Linq;
+using NHibernate.Cfg.MappingSchema;
+using NHibernate.Mapping.ByCode;
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.MappingByCode.ExpliticMappingTests
+{
+ public class MappingOfPrivateMembersOnRootEntity
+ {
+ public class MyClass
+ {
+ private int id;
+ private string something;
+ }
+
+ [Test]
+ public void MapClassWithIdAndProperty()
+ {
+ var mapper = new ModelMapper();
+ mapper.Class<MyClass>(ca =>
+ {
+ ca.Id(ForClass<MyClass>.Field("id"), map =>
+ {
+ map.Column("MyClassId");
+ map.Generator(Generators.HighLow, gmap => gmap.Params(new { max_low = 100 }));
+ });
+ ca.Property(ForClass<MyClass>.Field("something"), map => map.Length(150));
+ });
+ var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
+ var hbmClass = hbmMapping.RootClasses[0];
+ hbmClass.Should().Not.Be.Null();
+ var hbmId = hbmClass.Id;
+ hbmId.Should().Not.Be.Null();
+ hbmId.name.Should().Be("id");
+ hbmId.access.Should().Be("field");
+ var hbmGenerator = hbmId.generator;
+ hbmGenerator.Should().Not.Be.Null();
+ hbm...@cl...().Be("hilo");
+ hbmGenerator.param[0].name.Should().Be("max_low");
+ hbmGenerator.param[0].GetText().Should().Be("100");
+ var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single();
+ hbmProperty.name.Should().Be("something");
+ hbmProperty.access.Should().Be("field");
+ hbmProperty.length.Should().Be("150");
+ }
+ }
+}
\ No newline at end of file
Deleted: trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappingOfPrivateMembersOnRootEntity.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappingOfPrivateMembersOnRootEntity.cs 2011-04-03 14:03:09 UTC (rev 5592)
+++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappingOfPrivateMembersOnRootEntity.cs 2011-04-03 14:46:14 UTC (rev 5593)
@@ -1,49 +0,0 @@
-using System.Linq;
-using NHibernate.Cfg.MappingSchema;
-using NHibernate.Mapping.ByCode;
-using NHibernate.Mapping.ByCode.Impl;
-using NUnit.Framework;
-using SharpTestsEx;
-
-namespace NHibernate.Test.MappingByCode
-{
- public class MappingOfPrivateMembersOnRootEntity
- {
- public class MyClass
- {
- private int id;
- private string something;
- }
-
- [Test]
- public void MapClassWithIdAndProperty()
- {
- var mapper = new ModelMapper();
- mapper.Class<MyClass>(ca =>
- {
- ca.Id(ForClass<MyClass>.Field("id"), map =>
- {
- map.Column("MyClassId");
- map.Generator(Generators.HighLow, gmap => gmap.Params(new { max_low = 100 }));
- });
- ca.Property(ForClass<MyClass>.Field("something"), map => map.Length(150));
- });
- var hbmMapping = mapper.CompileMappingFor(new[] { typeof(MyClass) });
- var hbmClass = hbmMapping.RootClasses[0];
- hbmClass.Should().Not.Be.Null();
- var hbmId = hbmClass.Id;
- hbmId.Should().Not.Be.Null();
- hbmId.name.Should().Be("id");
- hbmId.access.Should().Be("field");
- var hbmGenerator = hbmId.generator;
- hbmGenerator.Should().Not.Be.Null();
- hbm...@cl...().Be("hilo");
- hbmGenerator.param[0].name.Should().Be("max_low");
- hbmGenerator.param[0].GetText().Should().Be("100");
- var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single();
- hbmProperty.name.Should().Be("something");
- hbmProperty.access.Should().Be("field");
- hbmProperty.length.Should().Be("150");
- }
- }
-}
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-03 14:03:09 UTC (rev 5592)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-03 14:46:14 UTC (rev 5593)
@@ -506,8 +506,8 @@
<Compile Include="Linq\ByMethod\SumTests.cs" />
<Compile Include="Logging\Log4NetLoggerTest.cs" />
<Compile Include="Logging\LoggerProviderTest.cs" />
- <Compile Include="MappingByCode\BasicMappingOfSimpleClass.cs" />
- <Compile Include="MappingByCode\ColumnsNamingConvetions.cs" />
+ <Compile Include="MappingByCode\ExpliticMappingTests\BasicMappingOfSimpleClass.cs" />
+ <Compile Include="MappingByCode\ExpliticMappingTests\ColumnsNamingConvetions.cs" />
<Compile Include="MappingByCode\ExplicitlyDeclaredModelTests\ComponentMappingRegistrationTests.cs" />
<Compile Include="MappingByCode\ExplicitlyDeclaredModelTests\JoinedSubclassMappingStrategyTests.cs" />
<Compile Include="MappingByCode\ExplicitlyDeclaredModelTests\JoinedSubclassSequenceRegistrationTests.cs" />
@@ -518,7 +518,7 @@
<Compile Include="MappingByCode\ExplicitlyDeclaredModelTests\SubclassSequenceRegistrationTests.cs" />
<Compile Include="MappingByCode\ExplicitlyDeclaredModelTests\UnionSubclassMappingStrategyTests.cs" />
<Compile Include="MappingByCode\ExplicitlyDeclaredModelTests\UnionSubclassSequenceRegistrationTests.cs" />
- <Compile Include="MappingByCode\MappingOfPrivateMembersOnRootEntity.cs" />
+ <Compile Include="MappingByCode\ExpliticMappingTests\MappingOfPrivateMembersOnRootEntity.cs" />
<Compile Include="MappingByCode\NatureDemo\Naturalness\Address.cs" />
<Compile Include="MappingByCode\NatureDemo\Naturalness\Animal.cs" />
<Compile Include="MappingByCode\NatureDemo\Naturalness\Classification.cs" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-04-04 18:23:04
|
Revision: 5605
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5605&view=rev
Author: fabiomaulo
Date: 2011-04-04 18:22:58 +0000 (Mon, 04 Apr 2011)
Log Message:
-----------
Port test from ConfORM
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappersTests/AbstractPropertyContainerMapperTest.cs
Added: trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappersTests/AbstractPropertyContainerMapperTest.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappersTests/AbstractPropertyContainerMapperTest.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/MappersTests/AbstractPropertyContainerMapperTest.cs 2011-04-04 18:22:58 UTC (rev 5605)
@@ -0,0 +1,148 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using NHibernate.Cfg.MappingSchema;
+using NHibernate.Mapping.ByCode.Impl;
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.MappingByCode.MappersTests
+{
+ public class AbstractPropertyContainerMapperTest
+ {
+ private class EntitySimple
+ {
+ public string Name { get; set; }
+ }
+ private class InheritedEntitySimple : EntitySimple
+ {
+ }
+
+ private class OtherSimple
+ {
+ public string Name { get; set; }
+ }
+
+ private class MyClass
+ {
+ public object Reference { get; set; }
+ }
+ private class MyClassWithDictionary
+ {
+ public IDictionary<string, string> Dictionary { get; set; }
+ }
+
+ [Test]
+ public void CantCreateWithoutHbmMapping()
+ {
+ Executing.This(() => new HackPropertyContainerMapper(typeof(EntitySimple), null)).Should().Throw<ArgumentNullException>();
+ }
+
+ [Test]
+ public void CantCreateWithoutContainerType()
+ {
+ Executing.This(() => new HackPropertyContainerMapper(null, new HbmMapping())).Should().Throw<ArgumentNullException>();
+ }
+
+ [Test]
+ public void CanAddSimpleProperty()
+ {
+ var properties = new List<object>();
+ var map = new StubPropertyContainerMapper<EntitySimple>(properties);
+ map.Property(typeof (EntitySimple).GetProperty("Name"), x => { });
+
+ properties.Should().Have.Count.EqualTo(1);
+ properties.First().Should().Be.OfType<HbmProperty>().And.ValueOf.Name.Should().Be.EqualTo("Name");
+ }
+
+ [Test]
+ public void CallPropertyMapper()
+ {
+ var properties = new List<object>();
+ var map = new StubPropertyContainerMapper<EntitySimple>(properties);
+ var called = false;
+ map.Property(typeof(EntitySimple).GetProperty("Name"), x => called = true );
+
+ called.Should().Be.True();
+ }
+
+ [Test]
+ public void CantAddPropertyOfNotInheritedType()
+ {
+ var map = new StubPropertyContainerMapper<OtherSimple>(new List<object>());
+ Executing.This(() => map.Property(typeof(EntitySimple).GetProperty("Name"), x => { })).Should().Throw<ArgumentOutOfRangeException>();
+ }
+
+ [Test]
+ public void CanAddPropertyOfInheritedType()
+ {
+ var properties = new List<object>();
+ var map = new StubPropertyContainerMapper<InheritedEntitySimple>(properties);
+ map.Property(typeof(InheritedEntitySimple).GetProperty("Name"), x => { });
+
+ properties.Should().Have.Count.EqualTo(1);
+ properties.First().Should().Be.OfType<HbmProperty>().And.ValueOf.Name.Should().Be.EqualTo("Name");
+ }
+
+ [Test]
+ public void CallAnyMapper()
+ {
+ var properties = new List<object>();
+ var map = new StubPropertyContainerMapper<EntitySimple>(properties);
+ var called = false;
+ map.Any(typeof(MyClass).GetProperty("Reference"), typeof(int), x => called = true);
+
+ called.Should().Be.True();
+ }
+
+ [Test]
+ public void CallDictionaryMappers()
+ {
+ var properties = new List<object>();
+ var map = new StubPropertyContainerMapper<EntitySimple>(properties);
+ var collectionPropsCalled = false;
+ var keyRelationCalled = false;
+ var elementRelationCalled = false;
+ map.Map(typeof (MyClassWithDictionary).GetProperty("Dictionary"), cp => collectionPropsCalled = true,
+ km => keyRelationCalled = true, er => elementRelationCalled = true);
+
+ collectionPropsCalled.Should().Be.True();
+ keyRelationCalled.Should().Be.True();
+ elementRelationCalled.Should().Be.True();
+ }
+
+ private class HackPropertyContainerMapper : AbstractPropertyContainerMapper
+ {
+ public HackPropertyContainerMapper(System.Type container, HbmMapping mapDoc) : base(container, mapDoc) {}
+
+ #region Overrides of AbstractPropertyContainerMapper
+
+ protected override void AddProperty(object property)
+ {
+ throw new NotImplementedException();
+ }
+
+ #endregion
+ }
+
+ private class StubPropertyContainerMapper<T> : AbstractPropertyContainerMapper
+ {
+ private readonly ICollection<object> elements;
+
+ public StubPropertyContainerMapper(ICollection<object> elements)
+ : base(typeof(T), new HbmMapping())
+ {
+ this.elements = elements;
+ }
+
+ #region Overrides of AbstractClassMapping<StateProvince>
+
+ protected override void AddProperty(object property)
+ {
+ elements.Add(property);
+ }
+
+ #endregion
+ }
+ }
+}
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-04 17:49:26 UTC (rev 5604)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-04 18:22:58 UTC (rev 5605)
@@ -522,6 +522,7 @@
<Compile Include="MappingByCode\ExpliticMappingTests\RootClassPropertiesSplitsTests.cs" />
<Compile Include="MappingByCode\ExpliticMappingTests\VersionTests.cs" />
<Compile Include="MappingByCode\For.cs" />
+ <Compile Include="MappingByCode\MappersTests\AbstractPropertyContainerMapperTest.cs" />
<Compile Include="MappingByCode\MappersTests\JoinMapperTests.cs" />
<Compile Include="MappingByCode\NatureDemo\Naturalness\Address.cs" />
<Compile Include="MappingByCode\NatureDemo\Naturalness\Animal.cs" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pa...@us...> - 2011-04-05 01:28:58
|
Revision: 5610
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5610&view=rev
Author: patearl
Date: 2011-04-05 01:28:51 +0000 (Tue, 05 Apr 2011)
Log Message:
-----------
Tests for proxied members with ref and out parameters.
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/ClassWithVarietyOfMembers.cs
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Mapping.hbm.xml
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/ClassWithVarietyOfMembers.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/ClassWithVarietyOfMembers.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/ClassWithVarietyOfMembers.cs 2011-04-05 01:28:51 UTC (rev 5610)
@@ -0,0 +1,20 @@
+using System;
+
+namespace NHibernate.Test.DynamicProxyTests.ProxiedMembers
+{
+ public class ClassWithVarietyOfMembers
+ {
+ public virtual int Id { get; set; }
+ public virtual string Data { get; set; }
+
+ public virtual void Method1(out int x)
+ {
+ x = 3;
+ }
+
+ public virtual void Method2(ref int x)
+ {
+ x++;
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Fixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Fixture.cs 2011-04-05 01:28:51 UTC (rev 5610)
@@ -0,0 +1,50 @@
+using System;
+using System.Collections;
+using System.IO;
+using System.Runtime.Serialization;
+using System.Runtime.Serialization.Formatters.Binary;
+using NUnit.Framework;
+
+namespace NHibernate.Test.DynamicProxyTests.ProxiedMembers
+{
+ [TestFixture]
+ public class Fixture : TestCase
+ {
+ protected override IList Mappings
+ {
+ get { return new[] { "DynamicProxyTests.ProxiedMembers.Mapping.hbm.xml" }; }
+ }
+
+ protected override string MappingsAssembly
+ {
+ get { return "NHibernate.Test"; }
+ }
+
+ [Test]
+ [Ignore]
+ public void Proxy()
+ {
+ ISession s = OpenSession();
+ ClassWithVarietyOfMembers c = new ClassWithVarietyOfMembers {Id = 1, Data = "some data"};
+ s.Save(c);
+ s.Flush();
+ s.Close();
+
+ s = OpenSession();
+ c = (ClassWithVarietyOfMembers)s.Load(typeof(ClassWithVarietyOfMembers), c.Id);
+ Assert.IsFalse(NHibernateUtil.IsInitialized(c));
+
+ int x;
+ c.Method1(out x);
+ Assert.AreEqual(3, x);
+
+ x = 4;
+ c.Method2(ref x);
+ Assert.AreEqual(5, x);
+
+ s.Delete(c);
+ s.Flush();
+ s.Close();
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Mapping.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Mapping.hbm.xml (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Mapping.hbm.xml 2011-04-05 01:28:51 UTC (rev 5610)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
+ assembly="NHibernate.Test"
+ namespace="NHibernate.Test.DynamicProxyTests.ProxiedMembers">
+ <class name="ClassWithVarietyOfMembers">
+ <id name="Id">
+ <generator class="assigned" />
+ </id>
+ <property name="Data" />
+ </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 2011-04-04 20:53:35 UTC (rev 5609)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-05 01:28:51 UTC (rev 5610)
@@ -222,6 +222,8 @@
<Compile Include="DynamicProxyTests\InterfaceProxySerializationTests\ProxyFixture.cs" />
<Compile Include="DynamicProxyTests\InterfaceWithEqualsGethashcodeTests.cs" />
<Compile Include="DynamicProxyTests\LazyFieldInterceptorSerializable.cs" />
+ <Compile Include="DynamicProxyTests\ProxiedMembers\ClassWithVarietyOfMembers.cs" />
+ <Compile Include="DynamicProxyTests\ProxiedMembers\Fixture.cs" />
<Compile Include="EngineTest\CallableParserFixture.cs" />
<Compile Include="EngineTest\NativeSQLQueryNonScalarReturnTest.cs" />
<Compile Include="EngineTest\NativeSQLQueryScalarReturnTest.cs" />
@@ -2535,6 +2537,7 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
+ <EmbeddedResource Include="DynamicProxyTests\ProxiedMembers\Mapping.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\SqlConverterAndMultiQuery\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2489\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2603\Mappings.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-04-06 21:06:36
|
Revision: 5628
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5628&view=rev
Author: fabiomaulo
Date: 2011-04-06 21:06:29 +0000 (Wed, 06 Apr 2011)
Log Message:
-----------
Fixed test to be only dyn-proxy test
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Fixture.cs
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/PassThroughInterceptor.cs
Removed Paths:
-------------
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/ClassWithVarietyOfMembers.cs
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Mapping.hbm.xml
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/PassThroughInterceptor.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/PassThroughInterceptor.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/PassThroughInterceptor.cs 2011-04-06 21:06:29 UTC (rev 5628)
@@ -0,0 +1,20 @@
+using System;
+using NHibernate.Proxy.DynamicProxy;
+
+namespace NHibernate.Test.DynamicProxyTests
+{
+ public class PassThroughInterceptor : NHibernate.Proxy.DynamicProxy.IInterceptor
+ {
+ private readonly object targetInstance;
+
+ public PassThroughInterceptor(object targetInstance)
+ {
+ this.targetInstance = targetInstance;
+ }
+
+ public object Intercept(InvocationInfo info)
+ {
+ return info.TargetMethod.Invoke(targetInstance, info.Arguments);
+ }
+ }
+}
\ No newline at end of file
Deleted: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/ClassWithVarietyOfMembers.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/ClassWithVarietyOfMembers.cs 2011-04-06 18:11:14 UTC (rev 5627)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/ClassWithVarietyOfMembers.cs 2011-04-06 21:06:29 UTC (rev 5628)
@@ -1,20 +0,0 @@
-using System;
-
-namespace NHibernate.Test.DynamicProxyTests.ProxiedMembers
-{
- public class ClassWithVarietyOfMembers
- {
- public virtual int Id { get; set; }
- public virtual string Data { get; set; }
-
- public virtual void Method1(out int x)
- {
- x = 3;
- }
-
- public virtual void Method2(ref int x)
- {
- x++;
- }
- }
-}
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Fixture.cs 2011-04-06 18:11:14 UTC (rev 5627)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Fixture.cs 2011-04-06 21:06:29 UTC (rev 5628)
@@ -1,50 +1,38 @@
-using System;
-using System.Collections;
-using System.IO;
-using System.Runtime.Serialization;
-using System.Runtime.Serialization.Formatters.Binary;
+using NHibernate.Proxy.DynamicProxy;
using NUnit.Framework;
+using SharpTestsEx;
namespace NHibernate.Test.DynamicProxyTests.ProxiedMembers
{
- [TestFixture]
- public class Fixture : TestCase
+ public class ClassWithVarietyOfMembers
{
- protected override IList Mappings
+ public virtual void Method1(out int x)
{
- get { return new[] { "DynamicProxyTests.ProxiedMembers.Mapping.hbm.xml" }; }
+ x = 3;
}
- protected override string MappingsAssembly
+ public virtual void Method2(ref int x)
{
- get { return "NHibernate.Test"; }
+ x++;
}
+ }
+ public class Fixture
+ {
[Test]
- [Ignore]
+ [Ignore]
public void Proxy()
{
- ISession s = OpenSession();
- ClassWithVarietyOfMembers c = new ClassWithVarietyOfMembers {Id = 1, Data = "some data"};
- s.Save(c);
- s.Flush();
- s.Close();
+ var factory = new ProxyFactory();
+ var c = (ClassWithVarietyOfMembers)factory.CreateProxy(typeof(ClassWithVarietyOfMembers), new PassThroughInterceptor(new ClassWithVarietyOfMembers()), null);
- s = OpenSession();
- c = (ClassWithVarietyOfMembers)s.Load(typeof(ClassWithVarietyOfMembers), c.Id);
- Assert.IsFalse(NHibernateUtil.IsInitialized(c));
+ int x;
+ c.Method1(out x);
+ x.Should().Be(3);
- int x;
- c.Method1(out x);
- Assert.AreEqual(3, x);
-
- x = 4;
- c.Method2(ref x);
- Assert.AreEqual(5, x);
-
- s.Delete(c);
- s.Flush();
- s.Close();
+ x = 4;
+ c.Method2(ref x);
+ x.Should().Be(5);
}
}
}
\ No newline at end of file
Deleted: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Mapping.hbm.xml
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Mapping.hbm.xml 2011-04-06 18:11:14 UTC (rev 5627)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/Mapping.hbm.xml 2011-04-06 21:06:29 UTC (rev 5628)
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
- assembly="NHibernate.Test"
- namespace="NHibernate.Test.DynamicProxyTests.ProxiedMembers">
- <class name="ClassWithVarietyOfMembers">
- <id name="Id">
- <generator class="assigned" />
- </id>
- <property name="Data" />
- </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 2011-04-06 18:11:14 UTC (rev 5627)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-06 21:06:29 UTC (rev 5628)
@@ -222,7 +222,7 @@
<Compile Include="DynamicProxyTests\InterfaceProxySerializationTests\ProxyFixture.cs" />
<Compile Include="DynamicProxyTests\InterfaceWithEqualsGethashcodeTests.cs" />
<Compile Include="DynamicProxyTests\LazyFieldInterceptorSerializable.cs" />
- <Compile Include="DynamicProxyTests\ProxiedMembers\ClassWithVarietyOfMembers.cs" />
+ <Compile Include="DynamicProxyTests\PassThroughInterceptor.cs" />
<Compile Include="DynamicProxyTests\ProxiedMembers\Fixture.cs" />
<Compile Include="EngineTest\CallableParserFixture.cs" />
<Compile Include="EngineTest\NativeSQLQueryNonScalarReturnTest.cs" />
@@ -2548,7 +2548,6 @@
<EmbeddedResource Include="NHSpecificTest\NH1291AnonExample\Mappings.hbm.xml" />
</ItemGroup>
<ItemGroup>
- <EmbeddedResource Include="DynamicProxyTests\ProxiedMembers\Mapping.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\SqlConverterAndMultiQuery\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2489\Mappings.hbm.xml" />
<EmbeddedResource Include="NHSpecificTest\NH2603\Mappings.hbm.xml" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-04-07 17:30:52
|
Revision: 5630
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5630&view=rev
Author: fabiomaulo
Date: 2011-04-07 17:30:46 +0000 (Thu, 07 Apr 2011)
Log Message:
-----------
passing test for NH-2628
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/MetodWithRefDictionaryTest.cs
Added: trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/MetodWithRefDictionaryTest.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/MetodWithRefDictionaryTest.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/DynamicProxyTests/ProxiedMembers/MetodWithRefDictionaryTest.cs 2011-04-07 17:30:46 UTC (rev 5630)
@@ -0,0 +1,29 @@
+using System.Collections.Generic;
+using NHibernate.Proxy.DynamicProxy;
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.DynamicProxyTests.ProxiedMembers
+{
+ public class MetodWithRefDictionaryTest
+ {
+ public class MyClass
+ {
+ public virtual void Method(ref Dictionary<string ,string> adictionary)
+ {
+ adictionary = new Dictionary<string, string>();
+ }
+ }
+
+ [Test]
+ public void Proxy()
+ {
+ var factory = new ProxyFactory();
+ var c = (MyClass)factory.CreateProxy(typeof(MyClass), new PassThroughInterceptor(new MyClass()), null);
+ var dictionary = new Dictionary<string, string>();
+ var myParam = dictionary;
+ c.Method(ref myParam);
+ myParam.Should().Not.Be.SameInstanceAs(dictionary);
+ }
+ }
+}
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-07 17:19:55 UTC (rev 5629)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-07 17:30:46 UTC (rev 5630)
@@ -224,6 +224,7 @@
<Compile Include="DynamicProxyTests\LazyFieldInterceptorSerializable.cs" />
<Compile Include="DynamicProxyTests\PassThroughInterceptor.cs" />
<Compile Include="DynamicProxyTests\ProxiedMembers\Fixture.cs" />
+ <Compile Include="DynamicProxyTests\ProxiedMembers\MetodWithRefDictionaryTest.cs" />
<Compile Include="EngineTest\CallableParserFixture.cs" />
<Compile Include="EngineTest\NativeSQLQueryNonScalarReturnTest.cs" />
<Compile Include="EngineTest\NativeSQLQueryScalarReturnTest.cs" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-04-07 19:44:28
|
Revision: 5632
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5632&view=rev
Author: fabiomaulo
Date: 2011-04-07 19:44:21 +0000 (Thu, 07 Apr 2011)
Log Message:
-----------
Base test class to work with sexy mapping
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
trunk/nhibernate/src/NHibernate.Test/TestCase.cs
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/TestCaseMappingByCode.cs
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-07 19:30:49 UTC (rev 5631)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-07 19:44:21 UTC (rev 5632)
@@ -749,6 +749,7 @@
<Compile Include="ReadOnly\VersionedNode.cs" />
<Compile Include="Subselect\ClassSubselectFixture.cs" />
<Compile Include="Subselect\Domain.cs" />
+ <Compile Include="TestCaseMappingByCode.cs" />
<Compile Include="TestDialect.cs" />
<Compile Include="TestDialects\PostgreSQL82TestDialect.cs" />
<Compile Include="TestDialects\SQLiteTestDialect.cs" />
Modified: trunk/nhibernate/src/NHibernate.Test/TestCase.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestCase.cs 2011-04-07 19:30:49 UTC (rev 5631)
+++ trunk/nhibernate/src/NHibernate.Test/TestCase.cs 2011-04-07 19:44:21 UTC (rev 5632)
@@ -222,16 +222,21 @@
if (TestConfigurationHelper.hibernateConfigFile != null)
cfg.Configure(TestConfigurationHelper.hibernateConfigFile);
+ AddMappings(cfg);
+
+ Configure(cfg);
+
+ ApplyCacheSettings(cfg);
+ }
+
+ protected virtual void AddMappings(Configuration configuration)
+ {
Assembly assembly = Assembly.Load(MappingsAssembly);
foreach (string file in Mappings)
{
- cfg.AddResource(MappingsAssembly + "." + file, assembly);
+ configuration.AddResource(MappingsAssembly + "." + file, assembly);
}
-
- Configure(cfg);
-
- ApplyCacheSettings(cfg);
}
protected virtual void CreateSchema()
Added: trunk/nhibernate/src/NHibernate.Test/TestCaseMappingByCode.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/TestCaseMappingByCode.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/TestCaseMappingByCode.cs 2011-04-07 19:44:21 UTC (rev 5632)
@@ -0,0 +1,25 @@
+using System.Collections;
+using NHibernate.Cfg.MappingSchema;
+
+namespace NHibernate.Test
+{
+ public abstract class TestCaseMappingByCode:TestCase
+ {
+ protected override IList Mappings
+ {
+ get { return new string[0]; }
+ }
+
+ protected override string MappingsAssembly
+ {
+ get { return null; }
+ }
+
+ protected override void AddMappings(Cfg.Configuration configuration)
+ {
+ configuration.AddDeserializedMapping(GetMappings(), "TestDomain");
+ }
+
+ protected abstract HbmMapping GetMappings();
+ }
+}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fab...@us...> - 2011-04-07 20:44:12
|
Revision: 5633
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5633&view=rev
Author: fabiomaulo
Date: 2011-04-07 20:44:05 +0000 (Thu, 07 Apr 2011)
Log Message:
-----------
Test for NH-2632 (not fixed yet)
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
Added Paths:
-----------
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/Domain.cs
trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/Fixture.cs
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/Domain.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/Domain.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/Domain.cs 2011-04-07 20:44:05 UTC (rev 5633)
@@ -0,0 +1,50 @@
+using System;
+using System.Collections.Generic;
+
+namespace NHibernate.Test.NHSpecificTest.NH2632
+{
+ public class Customer
+ {
+ public virtual Int64 Id
+ {
+ get;
+ private set;
+ }
+ public virtual String Name
+ {
+ get;
+ set;
+ }
+ public virtual String Address
+ {
+ get;
+ set;
+ }
+ public virtual IEnumerable<Order> Orders
+ {
+ get;
+ private set;
+ }
+ }
+
+ public class Order
+ {
+ public virtual Int32 Id
+ {
+ get;
+ private set;
+ }
+
+ public virtual DateTime Date
+ {
+ get;
+ set;
+ }
+
+ public virtual Customer Customer
+ {
+ get;
+ set;
+ }
+ }
+}
\ No newline at end of file
Added: trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/Fixture.cs
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/Fixture.cs (rev 0)
+++ trunk/nhibernate/src/NHibernate.Test/NHSpecificTest/NH2632/Fixture.cs 2011-04-07 20:44:05 UTC (rev 5633)
@@ -0,0 +1,103 @@
+using System;
+using NHibernate.Cfg;
+using NHibernate.Cfg.Loquacious;
+using NHibernate.Cfg.MappingSchema;
+using NHibernate.Mapping.ByCode;
+using NUnit.Framework;
+using SharpTestsEx;
+
+namespace NHibernate.Test.NHSpecificTest.NH2632
+{
+ public class Fixture: TestCaseMappingByCode
+ {
+ protected override HbmMapping GetMappings()
+ {
+ // The impl/mapping of the bidirectional one-to-many sucks but was provided as is
+ var mapper = new ModelMapper();
+ mapper.BeforeMapClass += (i, t, cm) => cm.Id(map =>
+ {
+ map.Column((t.Name + "Id").ToUpperInvariant());
+ map.Generator(Generators.HighLow, g => g.Params(new { max_lo = "1000" }));
+ });
+ mapper.Class<Customer>(ca =>
+ {
+ ca.Lazy(false);
+ ca.Id(x => x.Id, m => { });
+ ca.NaturalId(x => x.Property(c => c.Name, p => p.NotNullable(true)));
+ ca.Property(x => x.Address, p => p.Lazy(true));
+ ca.Set(c => c.Orders, c =>
+ {
+ c.Key(x => x.Column("CUSTOMERID"));
+ c.Inverse(true);
+ c.Cascade(Mapping.ByCode.Cascade.All);
+ }, c => c.OneToMany());
+ });
+ mapper.Class<Order>(cm =>
+ {
+ cm.Id(x => x.Id, m => { });
+ cm.Property(x => x.Date);
+ cm.ManyToOne(x => x.Customer, map => map.Column("CUSTOMERID"));
+ });
+ return mapper.CompileMappingForAllExplicitAddedEntities();
+ }
+
+ protected override void Configure(Cfg.Configuration configuration)
+ {
+ configuration.DataBaseIntegration(di => di.KeywordsAutoImport = Hbm2DDLKeyWords.AutoQuote);
+ }
+
+ private class Scenario : IDisposable
+ {
+ private readonly ISessionFactory factory;
+ private object customerId;
+
+ public Scenario(ISessionFactory factory)
+ {
+ this.factory = factory;
+ using (ISession s = factory.OpenSession())
+ {
+ using (ITransaction t = s.BeginTransaction())
+ {
+ var customer = new Customer { Name="Zombi", Address = "Bah?!??"};
+ var order = new Order { Date = DateTime.Today, Customer = customer };
+ customerId = s.Save(customer);
+ s.Save(order);
+ t.Commit();
+ }
+ }
+ }
+
+ public object CustomerId
+ {
+ get { return customerId; }
+ }
+
+ public void Dispose()
+ {
+ using (ISession s = factory.OpenSession())
+ {
+ using (ITransaction t = s.BeginTransaction())
+ {
+ s.Delete("from Order");
+ s.Delete("from Customer");
+ t.Commit();
+ }
+ }
+ }
+ }
+
+ [Test, Ignore("Not fixed yet")]
+ public void GettingCustomerDoesNotThrow()
+ {
+ using (var scenario = new Scenario(Sfi))
+ {
+ using (var session = OpenSession())
+ {
+ Customer customer = null;
+ Executing.This(()=> customer = session.Get<Customer>(scenario.CustomerId)).Should().NotThrow();
+ NHibernateUtil.IsInitialized(customer.Address).Should().Be.False();
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj
===================================================================
--- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-07 19:44:21 UTC (rev 5632)
+++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-07 20:44:05 UTC (rev 5633)
@@ -719,6 +719,8 @@
<Compile Include="NHSpecificTest\NH2580\Fixture.cs" />
<Compile Include="NHSpecificTest\NH2603\Fixture.cs" />
<Compile Include="NHSpecificTest\NH2603\Model.cs" />
+ <Compile Include="NHSpecificTest\NH2632\Domain.cs" />
+ <Compile Include="NHSpecificTest\NH2632\Fixture.cs" />
<Compile Include="NHSpecificTest\Properties\CompositePropertyRefTest.cs" />
<Compile Include="NHSpecificTest\Properties\DynamicEntityTest.cs" />
<Compile Include="NHSpecificTest\Properties\Model.cs" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|