|
@ -18,41 +18,46 @@ class TestUtil(unittest.TestCase): |
|
|
expected = "-0.00001234" |
|
|
expected = "-0.00001234" |
|
|
self.assertEqual(expected, result) |
|
|
self.assertEqual(expected, result) |
|
|
|
|
|
|
|
|
def _do_test_parse_URI(self, uri, expected_address, expected_amount, expected_label, expected_message, expected_request_url): |
|
|
def _do_test_parse_URI(self, uri, expected): |
|
|
address, amount, label, message, request_url = parse_URI(uri) |
|
|
result = parse_URI(uri) |
|
|
self.assertEqual(expected_address, address) |
|
|
self.assertEqual(expected, result) |
|
|
self.assertEqual(expected_amount, amount) |
|
|
|
|
|
self.assertEqual(expected_label, label) |
|
|
|
|
|
self.assertEqual(expected_message, message) |
|
|
|
|
|
self.assertEqual(expected_request_url, request_url) |
|
|
|
|
|
|
|
|
|
|
|
def test_parse_URI_address(self): |
|
|
def test_parse_URI_address(self): |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', '', '', '', '') |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', |
|
|
|
|
|
{'address': '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma'}) |
|
|
|
|
|
|
|
|
def test_parse_URI_only_address(self): |
|
|
def test_parse_URI_only_address(self): |
|
|
self._do_test_parse_URI('15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', None, None, None, None) |
|
|
self._do_test_parse_URI('15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', |
|
|
|
|
|
{'address': '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma'}) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_parse_URI_address_label(self): |
|
|
def test_parse_URI_address_label(self): |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?label=electrum%20test', '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', '', 'electrum test', '', '') |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?label=electrum%20test', |
|
|
|
|
|
{'address': '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', 'label': 'electrum test'}) |
|
|
|
|
|
|
|
|
def test_parse_URI_address_message(self): |
|
|
def test_parse_URI_address_message(self): |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?message=electrum%20test', '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', '', '', 'electrum test', '') |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?message=electrum%20test', |
|
|
|
|
|
{'address': '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', 'message': 'electrum test', 'memo': 'electrum test'}) |
|
|
|
|
|
|
|
|
def test_parse_URI_address_amount(self): |
|
|
def test_parse_URI_address_amount(self): |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?amount=0.0003', '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', 30000, '', '', '') |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?amount=0.0003', |
|
|
|
|
|
{'address': '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', 'amount': 30000}) |
|
|
|
|
|
|
|
|
def test_parse_URI_address_request_url(self): |
|
|
def test_parse_URI_address_request_url(self): |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?r=http://domain.tld/page?h%3D2a8628fc2fbe', '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', '', '', '', 'http://domain.tld/page?h=2a8628fc2fbe') |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?r=http://domain.tld/page?h%3D2a8628fc2fbe', |
|
|
|
|
|
{'address': '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', 'r': 'http://domain.tld/page?h=2a8628fc2fbe'}) |
|
|
|
|
|
|
|
|
def test_parse_URI_ignore_args(self): |
|
|
def test_parse_URI_ignore_args(self): |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?test=test', '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', '', '', '', '') |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?test=test', |
|
|
|
|
|
{'address': '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', 'test': 'test'}) |
|
|
|
|
|
|
|
|
def test_parse_URI_multiple_args(self): |
|
|
def test_parse_URI_multiple_args(self): |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?amount=0.00004&label=electrum-test&message=electrum%20test&test=none&r=http://domain.tld/page', '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', 4000, 'electrum-test', 'electrum test', 'http://domain.tld/page') |
|
|
self._do_test_parse_URI('bitcoin:15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma?amount=0.00004&label=electrum-test&message=electrum%20test&test=none&r=http://domain.tld/page', |
|
|
|
|
|
{'address': '15mKKb2eos1hWa6tisdPwwDC1a5J1y9nma', 'amount': 4000, 'label': 'electrum-test', 'message': u'electrum test', 'memo': u'electrum test', 'r': 'http://domain.tld/page', 'test': 'none'}) |
|
|
|
|
|
|
|
|
def test_parse_URI_no_address_request_url(self): |
|
|
def test_parse_URI_no_address_request_url(self): |
|
|
self._do_test_parse_URI('bitcoin:?r=http://domain.tld/page?h%3D2a8628fc2fbe', '', '', '', '', 'http://domain.tld/page?h=2a8628fc2fbe') |
|
|
self._do_test_parse_URI('bitcoin:?r=http://domain.tld/page?h%3D2a8628fc2fbe', |
|
|
|
|
|
{'r': 'http://domain.tld/page?h=2a8628fc2fbe'}) |
|
|
|
|
|
|
|
|
def test_parse_URI_invalid_address(self): |
|
|
def test_parse_URI_invalid_address(self): |
|
|
self.assertRaises(AssertionError, parse_URI, 'bitcoin:invalidaddress') |
|
|
self.assertRaises(AssertionError, parse_URI, 'bitcoin:invalidaddress') |
|
|