From 721b6ede78f019458f806ce4a9fca775fa523165 Mon Sep 17 00:00:00 2001 From: Kristaps Kaupe Date: Wed, 9 Dec 2020 20:52:23 +0200 Subject: [PATCH] Allow any case for scheme part of BIP21 URI as per spec --- jmbitcoin/jmbitcoin/bip21.py | 2 +- jmbitcoin/test/test_bip21.py | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/jmbitcoin/jmbitcoin/bip21.py b/jmbitcoin/jmbitcoin/bip21.py index 8d410ac..72b38b0 100644 --- a/jmbitcoin/jmbitcoin/bip21.py +++ b/jmbitcoin/jmbitcoin/bip21.py @@ -11,7 +11,7 @@ import re def is_bip21_uri(uri): parsed = urlparse(uri) - return parsed.scheme == 'bitcoin' and parsed.path != '' + return parsed.scheme.lower() == 'bitcoin' and parsed.path != '' def is_bip21_amount_str(amount): diff --git a/jmbitcoin/test/test_bip21.py b/jmbitcoin/test/test_bip21.py index 1e9ae91..711b219 100644 --- a/jmbitcoin/test/test_bip21.py +++ b/jmbitcoin/test/test_bip21.py @@ -26,6 +26,10 @@ def test_bip21_decode(): assert(btc.decode_bip21_uri('bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W' )['address'] == '175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W') + assert(btc.decode_bip21_uri('BITCOIN:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W' + )['address'] == '175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W') + assert(btc.decode_bip21_uri('BitCoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W' + )['address'] == '175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W') parsed = btc.decode_bip21_uri( 'bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?label=Luke-Jr')