miniSql

创建
zgc123@gmail.com authored at 11/19/2023 1:40:15 AM
6136600
Tree
0 Parent(s)
Summary: 1 changed files with 86 additions and 0 deletions.
Added +86 -0
Added +86 -0
diff --git a/minisqlquery-master/src/MiniSqlQuery.Tests/ConnectionDefinitionTests.cs b/minisqlquery-master/src/MiniSqlQuery.Tests/ConnectionDefinitionTests.cs
new file mode 100644
index 0000000..34f48fc
--- /dev/null
+++ b/minisqlquery-master/src/MiniSqlQuery.Tests/ConnectionDefinitionTests.cs
@@ -0,0 +1,86 @@
+#region License
+// Copyright 2005-2009 Paul Kohler (http://pksoftware.net/MiniSqlQuery/). All rights reserved.
+// This source code is made available under the terms of the Microsoft Public License (Ms-PL)
+// http://minisqlquery.codeplex.com/license
+#endregion
+using MiniSqlQuery.Core;
+using NUnit.Framework;
+using NUnit.Framework.SyntaxHelpers;
+
+namespace MiniSqlQuery.Tests
+{
+	[TestFixture]
+	public class ConnectionDefinitionTests
+	{
+		string sampleConnectionDefinition = "Connection Name^Provider.Namespace^Server=.; Database=master; Integrated Security=SSPI";
+		ConnectionDefinition connDef;
+
+		[SetUp]
+		public void TestSetUp()
+		{
+			connDef = ConnectionDefinition.Parse(sampleConnectionDefinition);
+		}
+
+		[Test]
+		public void Check_that_connection_strings_parse()
+		{
+			Assert.That(connDef.Name, Is.EqualTo("Connection Name"));
+			Assert.That(connDef.ProviderName, Is.EqualTo("Provider.Namespace"));
+			Assert.That(connDef.ConnectionString, Is.EqualTo("Server=.; Database=master; Integrated Security=SSPI"));
+		}
+
+		[Test]
+		public void Parsing_a_hashed_connection_string_yields_null()
+		{
+			ConnectionDefinition connDef = ConnectionDefinition.Parse("#" + sampleConnectionDefinition);
+			Assert.That(connDef, Is.Null);
+		}
+
+		[Test]
+		public void Parsing_empty_and_null_strings_yield_null()
+		{
+			string nullString = null;
+			Assert.That(ConnectionDefinition.Parse(nullString), Is.Null);
+			Assert.That(ConnectionDefinition.Parse(""), Is.Null);
+		}
+
+		[Test]
+		public void Calling_ToString_yields_the_connection_name()
+		{
+			Assert.That(connDef.ToString(), Is.EqualTo("Connection Name"));
+		}
+
+		[Test]
+		public void Can_parse_an_array_of_connection_definitions()
+		{
+			string[] lines = new string[]
+			{
+				"Connection1^sql^Server=.; Database=master; Integrated Security=SSPI",
+				"Connection2^oracle^Server=.; Database=fred; user=bob; password=p"
+			};
+
+			ConnectionDefinition[] connDefs = ConnectionDefinition.Parse(lines);
+
+			Assert.That(connDefs.Length, Is.EqualTo(2));
+			Assert.That(connDefs[0].Name, Is.EqualTo("Connection1"));
+			Assert.That(connDefs[1].Name, Is.EqualTo("Connection2"));
+		}
+
+
+		[Test]
+		public void Calling_ToParsableFormat_creates_a_parsable_string()
+		{
+			connDef.Name = "the name";
+			connDef.ProviderName = "the provider";
+			connDef.ConnectionString = "the connection string";
+
+			string connDefStr = connDef.ToParsableFormat();
+			Assert.That(connDefStr, Is.EqualTo("the name^the provider^the connection string"));
+
+			ConnectionDefinition newConnDef = ConnectionDefinition.Parse(connDefStr);
+			Assert.That(connDef.Name, Is.EqualTo("the name"));
+			Assert.That(connDef.ProviderName, Is.EqualTo("the provider"));
+			Assert.That(connDef.ConnectionString, Is.EqualTo("the connection string"));
+		}
+	}
+}