Commit Graph

311 Commits

Author SHA1 Message Date
ghubstan
798fde847b
Fix error msgs 2020-07-10 14:27:25 -03:00
ghubstan
ca378cdd13
Fix error msg spacing 2020-07-10 14:24:35 -03:00
ghubstan
05d0ce0ef8
Fix codacy problem
Avoid throwing null pointer exceptions.
2020-07-09 16:56:09 -03:00
ghubstan
efbaa5be73
Fix codacy problems
Avoid throwing raw exception types.

Combine nested if statements.
2020-07-09 16:54:03 -03:00
ghubstan
09929c833f
Fix codacy problems
Unnecessary use of fully qualified name 'System.exit' due to existing
static import 'java.lang.System.exit'.  (line 100)

Avoid throwing raw exception types.  (lines 295, 302)
2020-07-09 16:49:16 -03:00
ghubstan
e9baebc443
Add build tasks for installing dao-setup files
This gradle file is 'applied' by the main build file.

Usage:

  Run a full clean, build, download dao-setup.zip,
  and install the zip files contents in directory
  apitest/build/resources/main:

    ./gradlew clean build :apitest:installDaoSetup

  Download (if necessary) the dao-setup.zip file
  and install its contents in directory
  apitest/build/resources/main  (no build).

    ./gradlew :apitest:installDaoSetup
2020-07-09 16:03:46 -03:00
ghubstan
ae3b263cac
Add :apitest main driver, setup task & dummy tests
The driver class uses an ExecutorService to submit Callable
tasks for starting bitcoind and Bisq nodes as Linux background
processes.

By default, ApiTestMain starts background processes to support
regtest/dao testing, runs a few bitcoin-cli commands, then
shuts down all background processes before exiting.
(Actual API test suites have not been implemented yet.)

ApiTestConfig options can be used to skip tests and/or leave
background processes running indefinitely.
2020-07-09 15:49:12 -03:00
ghubstan
c0c75e2471
Support starting bitcoin & bisq apps on Linux
The apitest.linux package is for running random bash commands,
running 'bitcoind -regtest', running random 'bitcoin-cli -regtest'
commands, and spinning up Bisq apps such as seednode, arbnode,
and bob & alice nodes.

All but random bash and bitcoin-cli commands are run in the background.

The bitcoin-cli response processing is crude;  a more sophiticated
bitcoin-core rpc interface is not in the scope of this PR.
2020-07-09 15:35:45 -03:00
ghubstan
77b6878ec6
Add script to get Bisq app pid
Finding the pid of background linux/java processes has been
difficult to do from java, so a bash script is provided to
simplify the task.
2020-07-09 15:30:22 -03:00
ghubstan
e0c27eedcf
Add main resource files
* apitest.properties - config file for customizing ApiTestConfig
  options

* logback.xml - logging config file, will override logback files
  found in classpath

* bitcoin.conf - bitcoin-core regtest config file, overwritten
  during startup with correct path to blocknofity

* blocknotify - bitcoin-core blocknotify config file
2020-07-09 15:27:01 -03:00
ghubstan
88b5e9dbad
Add configuration support
ApiTestConfig works like :common Config, but specific to this subproject.

BisqAppConfig is an enumeration specifying Bisq desktop and daemon
options for running seednode, arbnode, bob & alices nodes in regtest /
full-dao mode.
2020-07-09 15:11:42 -03:00