btcpayserver/BTCPayServer.Tests
2018-03-02 14:16:16 -05:00
..
Logging Make ChargeListener use only one websocket connection per url 2018-02-26 13:29:23 +09: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 Update test sdk 2018-02-26 19:06:02 +09:00
BTCPayServerTester.cs Can configure an internallightningnode to make things easier 2018-02-26 18:58:02 +09:00
ChargeTester.cs Add lightning dependencies to tests and docker-compose 2018-02-23 15:21:42 +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 Make sure the txrelayfee is correctly set 2018-03-02 14:16:16 -05:00
docker-litecoin-cli.ps1 Add litecoin to docker-compose fix bugs when two networks generate same address 2018-01-09 01:56:37 +09:00
Dockerfile update docker test 2018-01-17 16:17:27 +09:00
EclairTester.cs Lightning Network support implementation 2018-02-26 00:48:12 +09:00
ProcessLauncher.cs Adopt dotnet core editorconfig, big reformating 2017-10-27 17:53:04 +09:00
README.md FAQ 2018-02-23 15:31:19 +09:00
ServerTester.cs Update to work with 0.16.0 2018-02-28 17:01:10 +09:00
TestAccount.cs Lightning Network support implementation 2018-02-26 00:48:12 +09:00
UnitTest1.cs Make ChargeListener use only one websocket connection per url 2018-02-26 13:29:23 +09:00
UnitTestPeusa.cs disable test not passing because of bitpay 2018-02-10 22:24:50 +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

For sending to litecoin, use .\docker-litecoin-cli.ps1 instead.

FAQ

docker-compose up dev failed or tests are not passing, what should I do?

  1. Run docker-compose down --v (this will reset your test environment)
  2. Run docker-compose pull (this will ensure you have the lastest images)
  3. Run again with docker-compose up dev

If you still have issues, try to restart docker.