Update tests and fix URI parsing
Update URI parsing for BIP0072 compatability Update tests for parse_URI
This commit is contained in:
10
lib/util.py
10
lib/util.py
@@ -159,6 +159,7 @@ def age(from_date, since_date = None, target_tz=None, include_seconds=False):
|
||||
|
||||
def parse_URI(uri):
|
||||
import urlparse
|
||||
import urllib
|
||||
import bitcoin
|
||||
from decimal import Decimal
|
||||
|
||||
@@ -170,7 +171,7 @@ def parse_URI(uri):
|
||||
assert u.scheme == 'bitcoin'
|
||||
|
||||
address = u.path
|
||||
assert bitcoin.is_address(address)
|
||||
valid_address = bitcoin.is_address(address)
|
||||
|
||||
pq = urlparse.parse_qs(u.query)
|
||||
|
||||
@@ -192,8 +193,13 @@ def parse_URI(uri):
|
||||
if 'label' in pq:
|
||||
label = pq['label'][0]
|
||||
if 'r' in pq:
|
||||
request_url = pq['r'][0]
|
||||
request_url = urllib.quote(pq['r'][0], '/:?')
|
||||
|
||||
if request_url != '':
|
||||
return address, amount, label, message, request_url
|
||||
|
||||
assert valid_address
|
||||
|
||||
return address, amount, label, message, request_url
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user