If a bitcoin: URI is to a testnet address, then a -testnet version of bitcoin should handle it (or should be launched).
I create a little test page at http://www.skypaint.com/bitcoin/uritest.html
If a bitcoin: URI is to a testnet address, then a -testnet version of bitcoin should handle it (or should be launched).
I create a little test page at http://www.skypaint.com/bitcoin/uritest.html
Maybe we need a different uri prefix for testnet? Discriminating on the internals of the address is going to be fragile at best, as the browser logic cannot handle it.
edit: hm I suppose it's also possible to determine/set the testnet flag in the URL handling logic, though I hardly think that fits within the principle of least surprise. Implications of wrongly starting the testnet client for real transactions or the real client for testnet transactions could be serious, especially for non-developers. It may be a good idea but I have to think about it.
I taught the URL handling logic to handle testnet/non-testnet addresses, and it should work on all platforms except OSX: https://github.com/gavinandresen/bitcoin-git/tree/testneturis
The logic is basically: If given a testnet bitcoin:address on the command-line: Try to pass it over a testnet-specific LocalServer socket If no testnet LocalServer already running, continue startup as -testnet
That doesn't work on OSX because URL handling is always done via AppleEvents. Even a separate MIME type wouldn't work on OSX, unless we shipped two different flavors of the Bitcoin-Qt.app binary (testnet/main net).
Closing; payment protocol fixed for all platforms except OSX (because of the way OSX starts up apps we can't fix).