List:Commits« Previous MessageNext Message »
From:Reggie Burnett Date:February 14 2011 9:14pm
Subject:bzr commit into connector-net-trunk branch (reggie.burnett:964)
View as plain text  
#At file:///C:/Users/Reggie/work/connector-net/6.3/ based on revid:reggie.burnett@stripped

  964 Reggie Burnett	2011-02-14 [merge]
      merged

    modified:
      CHANGES
      MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs
      MySql.Data/Tests/Source/ConnectionStringBuilder.cs
=== modified file 'CHANGES'
=== modified file 'CHANGES'
--- a/CHANGES	2011-02-14 19:24:40 +0000
+++ b/CHANGES	2011-02-14 21:14:52 +0000
@@ -3,6 +3,8 @@
   (MySQL bug #59537, Oracle bug #11766433)
 - fixed bug that prevented setting the membershipprovider's ApplicationName property at runtime
   (MySQL bug #59438, Oracle bug #11770465)
+- fixed MySqlConnectionStringBuilder.ContainsKey to return true for any alternative versions
+  of a keyword (MySQL bug #59835, Oracle bug #11766671)
 
 Version 6.3.6
 - Fixed TracingDriver so that it normalizes long queries before truncation so we don't get exceptions     

=== modified file 'MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs'
--- a/MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs	2010-11-03 21:04:38 +0000
+++ b/MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs	2011-02-14 21:14:52 +0000
@@ -763,6 +763,20 @@
             return new Regex(BlobAsUTF8ExcludePattern);
         }
 
+        public override bool ContainsKey(string keyword)
+        {
+            try
+            {
+                object value;
+                ValidateKeyword(keyword);
+                return values.TryGetValue(validKeywords[keyword], out value);
+            }
+            catch (Exception)
+            {
+                return false;
+            }
+        }
+
         public override object this[string keyword]
         {
             get { return values[validKeywords[keyword]]; }

=== modified file 'MySql.Data/Tests/Source/ConnectionStringBuilder.cs'
--- a/MySql.Data/Tests/Source/ConnectionStringBuilder.cs	2010-08-18 19:48:34 +0000
+++ b/MySql.Data/Tests/Source/ConnectionStringBuilder.cs	2011-02-14 21:13:40 +0000
@@ -116,5 +116,20 @@
             Assert.IsFalse(s.UseCompression);
             Assert.IsTrue(s.Pooling);
         }
+
+        /// <summary>
+        /// Bug #59835	.Net Connector MySqlConnectionStringBuilder wrong result ContainsKey function
+        /// </summary>
+        [Test]
+        public void ContainsKey()
+        {
+            MySqlConnectionStringBuilder s = new MySqlConnectionStringBuilder();
+            s["database"] = "test";
+            Assert.IsTrue(s.ContainsKey("initial catalog"));
+            s["server"] = "myserver";
+            Assert.IsTrue(s.ContainsKey("server"));
+            Assert.IsTrue(s.ContainsKey("host"));
+            Assert.IsFalse(s.ContainsKey("badkey"));
+        }
     }
 }

No bundle (reason: revision is a merge (you can force generation of a bundle with env var BZR_FORCE_BUNDLE=1)).
Thread
bzr commit into connector-net-trunk branch (reggie.burnett:964) Reggie Burnett14 Feb