Following the heartwood release 6ca7da2 we also rename tracking
to seeding, and update our `radicle-httpd` endpoints and configs.
Also updates test suites to handle new CLI commands.
Instead of relying on the `exit-hook` dependency, we should listen to
`exit`, `SIGINT`, `SIGTERM` and other exceptions, and kill all running
processes.
We currently use all three ways of importing lodash.
The one that provides us with the smalles bundle size is.
```
import isEqual from "lodash/isEqual";
```
So we should use that everywhere
When setting up the global fixtures we need to ensure that the peers
that create changes sync their changes to the seed (palm). The only
thing necessary is for the peer to discover palm as the seed for the
project. Then `git push rad --all` will sync all changes to palm.
It’s not necessary to listen for any other event and we remove the
corresponding calls to `waitForEvent` or `waitForRoutes`.
In fact, these calls never did anything besides sleep since the
implementation of `waitForEvent` was faulty. We fix that, too.
Signed-off-by: Thomas Scholtes <geigerzaehler@axiom.fm>
We stop asking for confirmation to remove the folders containing the
static generated fixtures. All the data is programatically generated so
it’s not a big deal if it is lost. In any case the data is retained
after a test run and only deleted before the next test run.
Signed-off-by: Thomas Scholtes <geigerzaehler@axiom.fm>
* The log prefix now includes the command name in addition to the peer
name. This allows us to distinguish `radicle-node` and `radicle-httpd`
logs as well as the output of commands.
* We also log prettify the JSON event log so it is easier to debug.
* Don’t log ouput of `waitForRoutes`
Signed-off-by: Thomas Scholtes <geigerzaehler@axiom.fm>
The update resulted in changes to all issue and patch IDs. We adapt the
tests so that they do not rely on fixed IDs.
Signed-off-by: Thomas Scholtes <geigerzaehler@axiom.fm>
- This commit doesn't change the way syntax highlighting is done.
- But due to changes in `radicle-httpd` we can highlight the entire
files of a changeset, and then replace the plain text lines with
highlighted ones.
- Also highlights only the files currently visible of a changeset.
Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
Since Heartwood is removing some of the radicle-node options we were
relying on when starting nodes for our tests, we need to move those to
the `config.json` file.
To make it more DX friendly, I added a `NodeConfigurator` class which
reads the correspondig `config.json`, stores it and allows to configure
it before starting a node.
Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
To avoid the test nodes to try to connect to the main network,
we need to modify the `config.json` of each node to use the `test`
network
Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
We still allow already published URLs with `/seeds/` in them to be
resolved.
Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
Signed-off-by: Rūdolfs Ošiņš <rudolfs@osins.org>
We use `defaultHttpdPort` for both exposed ports like on
seed.radicle.xyz as also for local ports e.g. radicle.local.
This worked fine, for now but has shown the first issues, when external
ports like 443 show up in the radicle.local connection dashboard.
Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
We determine URLs to mock with a URL matcher instead of mocking every
URL and determining the behavior in the route handler. This should be
slightly faster and should result in better debugging experience because
we don’t come across the `route.continue()` event that often.
Signed-off-by: Thomas Scholtes <geigerzaehler@axiom.fm>
To avoid the popping up of a terminal input field during the
globalFixture setup, we need to pass the wanted alias as a flag.
Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
To avoid port collisions between tests that can eventually run in
parallel, we need to be able to generate random port numbers.
This commit generates random httpd port numbers for inline tests,
while keeping the current palm seed with the default port number 8080.
Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
The end-to-end tests no run against the app served on port 3001 so that
we don’t need to shut down the development server.
Signed-off-by: Thomas Scholtes <geigerzaehler@axiom.fm>