diff options
Diffstat (limited to 'trunk/qpid/dotnet/Qpid.Client.Tests/url/ConnectionUrlTest.cs')
-rw-r--r-- | trunk/qpid/dotnet/Qpid.Client.Tests/url/ConnectionUrlTest.cs | 446 |
1 files changed, 0 insertions, 446 deletions
diff --git a/trunk/qpid/dotnet/Qpid.Client.Tests/url/ConnectionUrlTest.cs b/trunk/qpid/dotnet/Qpid.Client.Tests/url/ConnectionUrlTest.cs deleted file mode 100644 index 3c9f8dd4e2..0000000000 --- a/trunk/qpid/dotnet/Qpid.Client.Tests/url/ConnectionUrlTest.cs +++ /dev/null @@ -1,446 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -using System; -using System.Net; -using NUnit.Framework; -using Apache.Qpid.Client.Qms; - -namespace Apache.Qpid.Client.Tests.url -{ - [TestFixture] - public class connectionUrlTests - { - [Test] - public void FailoverURL() - { - //String url = "amqp://ritchiem:bob@/temp?brokerlist='tcp://localhost:5672;tcp://fancyserver:3000/',failover='roundrobin'"; - String url = "amqp://ritchiem:bob@default/temp?brokerlist='tcp://localhost:5672;tcp://fancyserver:3000/',failover='roundrobin'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.AreEqual("roundrobin", connectionurl.FailoverMethod); - Assert.IsTrue(connectionurl.Username.Equals("ritchiem")); - Assert.IsTrue(connectionurl.Password.Equals("bob")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/temp")); - - Assert.IsTrue(connectionurl.BrokerCount == 2); - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("tcp")); - Assert.IsTrue(service.Host.Equals("localhost")); - Assert.IsTrue(service.Port == 5672); - - service = connectionurl.GetBrokerInfo(1); - - Assert.IsTrue(service.Transport.Equals("tcp")); - Assert.IsTrue(service.Host.Equals("fancyserver")); - Assert.IsTrue(service.Port == 3000); - - } - - [Test] - public void SingleTransportUsernamePasswordURL() - { - String url = "amqp://ritchiem:bob@default/temp?brokerlist='tcp://localhost:5672'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.IsTrue(connectionurl.FailoverMethod == null); - Assert.IsTrue(connectionurl.Username.Equals("ritchiem")); - Assert.IsTrue(connectionurl.Password.Equals("bob")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/temp")); - - Assert.IsTrue(connectionurl.BrokerCount == 1); - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("tcp")); - Assert.IsTrue(service.Host.Equals("localhost")); - Assert.IsTrue(service.Port == 5672); - } - - [Test] - public void SingleTransportUsernameBlankPasswordURL() - { - String url = "amqp://ritchiem:@default/temp?brokerlist='tcp://localhost:5672'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.IsTrue(connectionurl.FailoverMethod == null); - Assert.IsTrue(connectionurl.Username.Equals("ritchiem")); - Assert.IsTrue(connectionurl.Password.Equals("")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/temp")); - - Assert.IsTrue(connectionurl.BrokerCount == 1); - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("tcp")); - Assert.IsTrue(service.Host.Equals("localhost")); - Assert.IsTrue(service.Port == 5672); - } - - [Test] - public void FailedURLNullPassword() - { - String url = "amqp://ritchiem@default/temp?brokerlist='tcp://localhost:5672'"; - - try - { - QpidConnectionInfo.FromUrl(url); - Assert.Fail("URL has null password"); - } - catch (UrlSyntaxException e) - { - Assert.AreEqual("Null password in user information not allowed.", e.Message); - Assert.IsTrue(e.GetIndex() == 7); - } - } - - [Test] - public void SingleTransportURL() - { - String url = "amqp://guest:guest@default/test?brokerlist='tcp://localhost:5672'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - - Assert.IsTrue(connectionurl.FailoverMethod == null); - Assert.IsTrue(connectionurl.Username.Equals("guest")); - Assert.IsTrue(connectionurl.Password.Equals("guest")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/test")); - - - Assert.IsTrue(connectionurl.BrokerCount == 1); - - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("tcp")); - Assert.IsTrue(service.Host.Equals("localhost")); - Assert.IsTrue(service.Port == 5672); - } - - [Test] - public void SingleTransportWithClientURLURL() - { - String url = "amqp://guest:guest@clientname/temp?brokerlist='tcp://localhost:5672'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - - Assert.IsTrue(connectionurl.FailoverMethod == null); - Assert.IsTrue(connectionurl.Username.Equals("guest")); - Assert.IsTrue(connectionurl.Password.Equals("guest")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/temp")); - Assert.IsTrue(connectionurl.ClientName.Equals("clientname")); - - - Assert.IsTrue(connectionurl.BrokerCount == 1); - - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("tcp")); - Assert.IsTrue(service.Host.Equals("localhost")); - Assert.IsTrue(service.Port == 5672); - } - - [Test] - public void SingleTransport1OptionURL() - { - String url = "amqp://guest:guest@default/temp?brokerlist='tcp://localhost:5672',routingkey='jim'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.IsTrue(connectionurl.FailoverMethod == null); - Assert.IsTrue(connectionurl.Username.Equals("guest")); - Assert.IsTrue(connectionurl.Password.Equals("guest")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/temp")); - - - Assert.IsTrue(connectionurl.BrokerCount == 1); - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("tcp")); - - Assert.IsTrue(service.Host.Equals("localhost")); - Assert.IsTrue(service.Port == 5672); - Assert.IsTrue(connectionurl.GetOption("routingkey").Equals("jim")); - } - - [Test] - public void SingleTransportDefaultedBroker() - { - String url = "amqp://guest:guest@default/temp?brokerlist='localhost:'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.IsTrue(connectionurl.FailoverMethod == null); - Assert.IsTrue(connectionurl.Username.Equals("guest")); - Assert.IsTrue(connectionurl.Password.Equals("guest")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/temp")); - - - Assert.IsTrue(connectionurl.BrokerCount == 1); - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("tcp")); - - Assert.IsTrue(service.Host.Equals("localhost")); - Assert.IsTrue(service.Port == 5672); - } - - [Test] - public void SingleTransportMultiOptionURL() - { - String url = "amqp://guest:guest@default/temp?brokerlist='tcp://localhost:5672',routingkey='jim',timeout='200',immediatedelivery='true'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.IsTrue(connectionurl.FailoverMethod == null); - Assert.IsTrue(connectionurl.Username.Equals("guest")); - Assert.IsTrue(connectionurl.Password.Equals("guest")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/temp")); - - Assert.IsTrue(connectionurl.BrokerCount == 1); - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("tcp")); - - Assert.IsTrue(service.Host.Equals("localhost")); - Assert.IsTrue(service.Port == 5672); - - Assert.IsTrue(connectionurl.GetOption("routingkey").Equals("jim")); - Assert.IsTrue(connectionurl.GetOption("timeout").Equals("200")); - Assert.IsTrue(connectionurl.GetOption("immediatedelivery").Equals("true")); - } - - [Test] - public void SinglevmURL() - { - String url = "amqp://guest:guest@default/messages?brokerlist='vm://default:2'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.IsTrue(connectionurl.FailoverMethod == null); - Assert.IsTrue(connectionurl.Username.Equals("guest")); - Assert.IsTrue(connectionurl.Password.Equals("guest")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/messages")); - - Assert.IsTrue(connectionurl.BrokerCount == 1); - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("vm")); - Assert.AreEqual("localhost", service.Host); - Assert.AreEqual(2, service.Port); - } - - [Test] - public void FailoverVMURL() - { - String url = "amqp://ritchiem:bob@default/temp?brokerlist='vm://default:2;vm://default:3',failover='roundrobin'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.IsTrue(connectionurl.FailoverMethod.Equals("roundrobin")); - Assert.IsTrue(connectionurl.Username.Equals("ritchiem")); - Assert.IsTrue(connectionurl.Password.Equals("bob")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/temp")); - - Assert.AreEqual(2, connectionurl.BrokerCount); - - IBrokerInfo service = connectionurl.GetBrokerInfo(0); - - Assert.IsTrue(service.Transport.Equals("vm")); - Assert.AreEqual("localhost", service.Host); - Assert.IsTrue(service.Port == 2); - - service = connectionurl.GetBrokerInfo(1); - Assert.IsTrue(service.Transport.Equals("vm")); - Assert.AreEqual("localhost", service.Host); - Assert.IsTrue(service.Port == 3); - } - - [Test] - public void NoVirtualHostURL() - { - String url = "amqp://user@default?brokerlist='tcp://localhost:5672'"; - - try - { - QpidConnectionInfo.FromUrl(url); - Assert.Fail("URL has no virtual host should not parse"); - } - catch (UrlSyntaxException) - { - // This should occur. - } - } - - [Test] - public void NoClientID() - { - String url = "amqp://user:@default/test?brokerlist='tcp://localhost:5672'"; - - IConnectionInfo connectionurl = QpidConnectionInfo.FromUrl(url); - - Assert.IsTrue(connectionurl.Username.Equals("user")); - Assert.IsTrue(connectionurl.Password.Equals("")); - Assert.IsTrue(connectionurl.VirtualHost.Equals("/test")); - Assert.IsTrue(connectionurl.ClientName.StartsWith(Dns.GetHostName())); - - Assert.IsTrue(connectionurl.BrokerCount == 1); - } - - [Test] - public void WrongOptionSeparatorInOptions() - { - String url = "amqp://guest:guest@default/test?brokerlist='tcp://localhost:5672;tcp://localhost:5673'+failover='roundrobin'"; - try - { - QpidConnectionInfo.FromUrl(url); - Assert.Fail("URL Should not parse"); - } - catch (UrlSyntaxException urise) - { - Assert.IsTrue(urise.Message.Equals("Unterminated option. Possible illegal option separator:'+'")); - } - - } - - [Test] - public void NoUserDetailsProvidedWithClientID() - - { - String url = "amqp://clientID/test?brokerlist='tcp://localhost:5672;tcp://localhost:5673'"; - try - { - QpidConnectionInfo.FromUrl(url); - Assert.Fail("URL Should not parse"); - } - catch (UrlSyntaxException urise) - { - Assert.IsTrue(urise.Message.StartsWith("User information not found on url")); - } - - } - - [Test] - public void NoUserDetailsProvidedNOClientID() - - { - String url = "amqp:///test@default?brokerlist='tcp://localhost:5672;tcp://localhost:5673'"; - try - { - QpidConnectionInfo.FromUrl(url); - Assert.Fail("URL Should not parse"); - } - catch (UrlSyntaxException urise) - { - - Assert.IsTrue(urise.Message.StartsWith("User information not found on url")); - } - - } - - [Test] - public void CheckVirtualHostFormat() - { - String url = "amqp://guest:guest@default/t.-_+!=:?brokerlist='tcp://localhost:5672'"; - - IConnectionInfo connection = QpidConnectionInfo.FromUrl(url); - Assert.IsTrue(connection.VirtualHost.Equals("/t.-_+!=:")); - } - - [Test] - public void CheckDefaultPort() - { - String url = "amqp://guest:guest@default/test=:?brokerlist='tcp://localhost'"; - - IConnectionInfo connection = QpidConnectionInfo.FromUrl(url); - - IBrokerInfo broker = connection.GetBrokerInfo(0); - Assert.IsTrue(broker.Port == BrokerInfoConstants.DEFAULT_PORT); - - } - - [Test] - public void CheckMissingFinalQuote() - { - String url = "amqp://guest:guest@id/test" + "?brokerlist='tcp://localhost:5672"; - - try - { - QpidConnectionInfo.FromUrl(url); - } - catch (UrlSyntaxException e) - { -// Assert.AreEqual("Unterminated option at index 32: brokerlist='tcp://localhost:5672", -// e.Message); - Assert.AreEqual("Unterminated option", e.Message); - } - } - - [Test] - public void ValidateQpidConnectionInfoFromToString() - { - String url = "amqp://ritchiem:bob@default/temp?brokerlist='tcp://localhost:5672;tcp://fancyserver:3000/',failover='roundrobin'"; - - IConnectionInfo connectionInfo = QpidConnectionInfo.FromUrl(url); - IConnectionInfo connectionInfo1 = QpidConnectionInfo.FromUrl(connectionInfo.ToString()); - - Console.WriteLine(connectionInfo.ToString()); - Console.WriteLine(connectionInfo1.ToString()); - - Assert.AreEqual(connectionInfo.Username, connectionInfo1.Username); - Assert.AreEqual(connectionInfo.Password, connectionInfo1.Password); - Assert.AreEqual(connectionInfo.VirtualHost, connectionInfo1.VirtualHost); - - Assert.IsTrue((connectionInfo1.GetAllBrokerInfos().Count == 2)); - Assert.IsTrue(connectionInfo.GetBrokerInfo(0).Equals(connectionInfo1.GetBrokerInfo(0))); - Assert.IsTrue(connectionInfo.GetBrokerInfo(1).Equals(connectionInfo1.GetBrokerInfo(1))); - - } - - [Test] - public void EnsureVirtualHostStartsWithSlash() - { - IConnectionInfo connection = new QpidConnectionInfo(); - connection.VirtualHost = "test"; - Assert.AreEqual("/test", connection.VirtualHost); - - connection.VirtualHost = "/mytest"; - Assert.AreEqual("/mytest", connection.VirtualHost); - - connection.VirtualHost = ""; - Assert.AreEqual("/", connection.VirtualHost); - - connection.VirtualHost = null; - Assert.AreEqual("/", connection.VirtualHost); - } - } -} |