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