From: <fab...@us...> - 2008-09-03 22:46:33
|
Revision: 3748 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=3748&view=rev Author: fabiomaulo Date: 2008-09-03 22:46:41 +0000 (Wed, 03 Sep 2008) Log Message: ----------- - Merge r3747 (fix NH-1462) - Minors Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Util/StringHelper.cs trunk/nhibernate/src/NHibernate.Test/UtilityTest/StringHelperFixture.cs Modified: trunk/nhibernate/src/NHibernate/Util/StringHelper.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Util/StringHelper.cs 2008-09-03 22:42:30 UTC (rev 3747) +++ trunk/nhibernate/src/NHibernate/Util/StringHelper.cs 2008-09-03 22:46:41 UTC (rev 3748) @@ -235,7 +235,7 @@ /// <returns></returns> public static string GetFullClassname(string typeName) { - return typeName.Trim().Split(' ', ',')[0]; + return new TypeNameParser().ParseTypeName(typeName, null, null).Type; } /// <summary> @@ -492,7 +492,7 @@ char first = name[0]; // Should we check for prefix == string.Empty rather than a length check? - if (prefix != null && prefix.Length > 0 && first != SingleQuote && !char.IsDigit(first)) + if (!string.IsNullOrEmpty(prefix) && first != SingleQuote && !char.IsDigit(first)) { return prefix + Dot + name; } @@ -505,7 +505,7 @@ public static string[] Qualify(string prefix, string[] names) { // Should we check for prefix == string.Empty rather than a length check? - if (prefix != null && prefix.Length > 0) + if (!string.IsNullOrEmpty(prefix)) { int len = names.Length; string[] qualified = new string[len]; Modified: trunk/nhibernate/src/NHibernate.Test/UtilityTest/StringHelperFixture.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/UtilityTest/StringHelperFixture.cs 2008-09-03 22:42:30 UTC (rev 3747) +++ trunk/nhibernate/src/NHibernate.Test/UtilityTest/StringHelperFixture.cs 2008-09-03 22:46:41 UTC (rev 3748) @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using NHibernate.Util; using NUnit.Framework; @@ -29,6 +30,17 @@ } [Test] + public void GetFullClassNameForGenericType() + { + string typeName = typeof (IDictionary<int, string>).AssemblyQualifiedName; + string expected = typeof (IDictionary<int, string>).FullName; + Assert.AreEqual(expected, StringHelper.GetFullClassname(typeName)); + typeName = "some.namespace.SomeType`1[[System.Int32, mscorlib], System.Int32], some.assembly"; + expected = "some.namespace.SomeType`1[[System.Int32, mscorlib], System.Int32]"; + Assert.AreEqual(expected, StringHelper.GetFullClassname(typeName)); + } + + [Test] public void CountUnquotedParams() { // Base case, no values This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |