btcpayserver/BTCPayServer.Tests
2018-01-08 17:17:39 +09:00
..
Logging Correctly handle RBF 2017-11-06 00:31:02 -08:00
Mocks Adopt dotnet core editorconfig, big reformating 2017-10-27 17:53:04 +09:00
Properties Adopt dotnet core editorconfig, big reformating 2017-10-27 17:53:04 +09:00
BTCPayServer.Tests.csproj Can start without NBXplorer being ready 2017-12-17 01:04:20 +09:00
BTCPayServerTester.cs Use Websocket for blockchain notifications 2018-01-08 02:36:41 +09:00
CustomerHttpServer.cs Adopt dotnet core editorconfig, big reformating 2017-10-27 17:53:04 +09:00
docker-bitcoin-cli.ps1 helper script for using cli on regtest 2017-10-21 20:20:06 +09:00
docker-compose.yml bump nbxplorer 2018-01-08 17:17:39 +09:00
Dockerfile Rely on docker for tests, move everything to the root 2017-10-03 00:41:03 +09:00
EclairTester.cs Prepare Eclair integration 2017-12-13 15:49:19 +09:00
ProcessLauncher.cs Adopt dotnet core editorconfig, big reformating 2017-10-27 17:53:04 +09:00
README.md add more doc for contributing 2017-12-19 11:47:43 +09:00
ServerTester.cs Remove internal url 2018-01-07 21:58:46 +09:00
TestAccount.cs Correctly handle RBF 2017-11-06 00:31:02 -08:00
UnitTest1.cs Use Websocket for blockchain notifications 2018-01-08 02:36:41 +09:00
UnitTestPeusa.cs Adopt dotnet core editorconfig, big reformating 2017-10-27 17:53:04 +09:00
Utils.cs Adopt dotnet core editorconfig, big reformating 2017-10-27 17:53:04 +09:00

How to be started for development

BTCPay Server tests depend on having a proper environment running with Postgres, Bitcoind, NBxplorer configured. You can however use the docker-compose.yml of this folder to get it running.

In addition, when you run a debug session of BTCPay (Hitting F5 on Visual Studio Code or Visual Studio 2017), it will run the launch profile called Docker-Regtest. This launch profile depends on this docker-compose running.

This is running a bitcoind instance on regtest, a private bitcoin blockchain for testing on which you can generate blocks yourself.

docker-compose up dev

You can run the tests while it is running through your favorite IDE, or with

dotnet test

Once you want to stop

docker-compose down

If you want to stop, and remove all existing data

docker-compose down -v

You can run the tests inside a container by running

docker-compose run --rm tests

Send commands to bitcoind

You can call bitcoin-cli inside the container with docker exec, for example, if you want to send 0.23111090 to mohu16LH66ptoWGEL1GtP6KHTBJYXMWhEf:

docker exec -ti btcpayserver_dev_bitcoind bitcoin-cli -regtest -conf="/data/bitcoin.conf" -datadir="/data" sendtoaddress "mohu16LH66ptoWGEL1GtP6KHTBJYXMWhEf" 0.23111090

If you are using Powershell:

.\docker-bitcoin-cli.ps1 sendtoaddress "mohu16LH66ptoWGEL1GtP6KHTBJYXMWhEf" 0.23111090