generated from honeycombio/.github
-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #28 from honeycombio/jamie.dev-and-local-setup
maint: add dev notes and update smoke test - Add dedicated DEVELOPING.md for local dev setup and notes, and reference that section in the README. Also update links in README for other docs. - Sometimes the console output takes longer than the default timeout of 4000ms, so update Cypress config to timeout at 10000ms instead.
- Loading branch information
Showing
3 changed files
with
76 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
# Local Development | ||
|
||
## Prerequisites | ||
|
||
**Required:** | ||
|
||
- Node.js (minimum version declared in package.json) | ||
|
||
**Recommended:** | ||
|
||
- VSCode Plugins: | ||
- ESLint (dbaeumer.vscode-eslint) | ||
- Prettier (esbenp.prettier-vscode) | ||
- Prettier ESLint (rvest.vs-code-prettier-eslint) | ||
- Docker - Required for running smoke-tests. | ||
- [Docker Desktop](https://www.docker.com/products/docker-desktop/) is a reliable choice if you don't have your own preference. | ||
|
||
## Main Commands | ||
|
||
```shell | ||
# install all dependencies from package.json | ||
npm install | ||
|
||
# compile the typescript source to javascript in a dist directory | ||
npm run build | ||
|
||
# prettier will specify files that need formatting changes | ||
npm run check-format | ||
|
||
# eslint will specify files that have linting errors | ||
npm run lint | ||
|
||
# run unit tests with jest | ||
npm run test | ||
``` | ||
|
||
## Smoke Tests | ||
|
||
Smoke tests currently use Cypress and Docker, and rely on console output. | ||
|
||
```sh | ||
# run smoke tests with cypress and docker | ||
npm run test:smoke | ||
``` | ||
|
||
If it doesn't clean up properly afterward, manually tear it down: | ||
|
||
```sh | ||
npm run clean:smoke-test-example | ||
``` | ||
|
||
## Example Application | ||
|
||
The example app uses a local install of the root directory's code, so make sure that is built first. | ||
|
||
```sh | ||
# navigate to example app | ||
cd ./examples/hello-world-web | ||
|
||
# install dependencies, including local source package | ||
npm install | ||
|
||
# add api key into index.js | ||
|
||
# bundle and run example in watch mode to update when source changes | ||
npm run dev | ||
``` | ||
|
||
To see output in the console in the browser, be sure to enable the console level Verbose in Console Dev Tools. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters