daml/navigator/backend/scenarios/README.md
Moritz Kiefer b3a5c3b28d
Share test certificates (#4982)
* Share test certificates

This is primarily an attempt at making sure my contribution stats
remain negative but I think it’s a nice cleanup. The only difference
in the certs used by daml-helper which are now used everywhere is that
they use a different CN for the CA and the server. This is required to
make openssl happy (which is used by the daml-helper).

changelog_begin
changelog_end

* Fix script and trigger tests
2020-03-13 12:12:34 +01:00

1.8 KiB

Navigator Testing Scenarios

The scenario(s) contained in this directory are useful to quickly spin up the sandbox and navigator from HEAD and visually inspect the navigator UI or perform other tests.

As an example, assuming your current working directory is the project root, you can:

  1. open a terminal

  2. change your working directory to navigator/backend/scenarios/rental

  3. build the project

    daml build
    
  4. start the sandbox and run a scenario

    bazel run --run_under="cd $PWD && " \
    //ledger/sandbox:sandbox-binary -- --scenario Main:example dist/rental.dar
    
  5. open another terminal

  6. change your working directory to navigator/backend/scenarios/rental

  7. start the navigator

    bazel run --run_under="cd $PWD && " \
    //navigator/backend:navigator-binary -- server
    
  8. open a browser

  9. go to localhost:4000

  10. play around

Usage with TLS

If you want to use a secure channel (e.g.: to test against an authenticated sandbox), you can use the test certificates in //ledger/test-common/test-certificates.

To use them, run the sandbox as follows:

   bazel build //ledger/test-common/test-certificates
   bazel run --run_under="cd $PWD && " \
   //ledger/sandbox:sandbox-binary -- --scenario Main:example dist/rental.dar
   --pem $PWD/bazel-bin/ledger/test-common/test-certificates/server.pem --crt $PWD/bazel-bin/ledger/test-common/test-certificates/server.crt --cacrt $PWD/bazel-bin/ledger/test-common/test-certificates/ca.crt

And run navigator as follows:

   bazel run --run_under="cd $PWD && " \
   //navigator/backend:navigator-binary -- server \
   --pem $PWD/bazel-bin/ledger/test-common/test-certificates/client.pem --crt $PWD/bazel-bin/ledger/test-common/test-certificates/client.crt --cacrt $PWD/bazel-bin/ledger/test-common/test-certificates/ca.crt