~singpolyma/sgx-jmp

ref: 9d3db6ed13ff50752ab8dfaa369a123436e71b17 sgx-jmp/sgx_jmp.rb -rw-r--r-- 5.3 KiB
Reject promise on stanza error
Merge branch 'register-command-first-pass'

* register-command-first-pass:
  Add sourcehut CI
  Add Rakefile to run all tests
  Initial registration flow for Bitcoin
  Registrations that start on the web will have a tel selected already
  Helpers for doing Electrum RPC
  Add helper to fetch current BTC sell prices
  Allow skipping tests without being caught in pry
Initial registration flow for Bitcoin

This is the Bitcoin "happy path" where there is already a tel and a customer_id.
Gets all the way to generating a BTC address for payment and quoting an amount.
Stubs out flows for credit card and activation code as well, but does not
implement those flows.

TBD: after bitcoin payment comes in and jmp-pay activates the account, we should
come back here to actually buy the number, select a new one if no longer
available, etc.
Split logic out into testable objects

Rubocop clean. Good test coverage of helper objects.
Currency aware

Look up the user's plan to find out what currency to charge them in.
Submit for settlement

We'd like to actually get the money, not just be allowed to.
Always show money with two decimal places
Only ask which card to use if there is more than one
Write initial buy credit command
Initial commit

Supports registering with backend SGX via basic iq:register.

Does not support data forms version with nice labels.

Does not verify billing or anything else yet, just unconditionally registers the user.