From e048998526e4beceda8ba1d732197bf945114ef3 Mon Sep 17 00:00:00 2001 From: "Rafael H. Schloming" Date: Tue, 10 Nov 2009 20:16:27 +0000 Subject: permit hash and star as part of the address git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@834647 13f79535-47bb-0310-9956-ffa450edef68 --- python/qpid/address.py | 2 +- python/qpid/tests/__init__.py | 2 +- python/qpid/tests/address.py | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 python/qpid/tests/address.py (limited to 'python') diff --git a/python/qpid/address.py b/python/qpid/address.py index 5976d4889b..3355d1a591 100644 --- a/python/qpid/address.py +++ b/python/qpid/address.py @@ -36,7 +36,7 @@ RBRACE = Type("RBRACE", r"\}") COLON = Type("COLON", r":") COMMA = Type("COMMA", r",") SLASH = Type("SLASH", r"/") -ID = Type("ID", r'[a-zA-Z_][a-zA-Z0-9_.-]*') +ID = Type("ID", r'[a-zA-Z_][a-zA-Z0-9_.#*-]*') NUMBER = Type("NUMBER", r'[+-]?[0-9]*\.?[0-9]+') STRING = Type("STRING", r""""(?:[^\\"]|\\.)*"|'(?:[^\\']|\\.)*'""") WSPACE = Type("WSPACE", r"[ \n\r\t]+") diff --git a/python/qpid/tests/__init__.py b/python/qpid/tests/__init__.py index 7d2967c55b..6d227dd656 100644 --- a/python/qpid/tests/__init__.py +++ b/python/qpid/tests/__init__.py @@ -25,4 +25,4 @@ class Test: def configure(self, config): self.config = config -import messaging, framing +import address, framing, messaging diff --git a/python/qpid/tests/address.py b/python/qpid/tests/address.py new file mode 100644 index 0000000000..51a9716343 --- /dev/null +++ b/python/qpid/tests/address.py @@ -0,0 +1,35 @@ +# +# 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. +# + +from qpid.tests import Test +from qpid.address import parse + +class AddressTests(Test): + + def testHash(self): + name, subject, options = parse("foo/bar.#") + assert name == "foo", name + assert subject == "bar.#", bar + assert options == None + + def testStar(self): + name, subject, options = parse("foo/bar.*") + assert name == "foo", name + assert subject == "bar.*", bar + assert options == None -- cgit v1.2.1