juice-shop-ctf-cli
Version:
Capture-the-Flag (CTF) environment setup tools for OWASP Juice Shop
76 lines (56 loc) • 3.58 kB
Markdown
# Contributing [](https://github.com/juice-shop/juice-shop-ctf/graphs/contributors) [](http://standardjs.com/)
[](https://github.com/juice-shop/juice-shop-ctf/actions/workflows/ci.yml)
[](https://cloud.docker.com/repository/docker/bkimminich/juice-shop-ctf/builds)
[](https://coveralls.io/github/juice-shop/juice-shop-ctf?branch=master)
[](https://codeclimate.com/github/juice-shop/juice-shop-ctf)



Found a bug? Got an idea for enhancement? Feel like adding support for
another CTF framework?
Feel free to
[create an issue](https://github.com/juice-shop/juice-shop-ctf/issues)
or
[post your ideas in the chat](https://gitter.im/bkimminich/juice-shop)!
Pull requests are also highly welcome - please follow the guidelines
below to make sure your PR can be merged and doesn't break anything.
## Git-Flow
This repository is maintained in a simplified
[Git-Flow](http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/)
fashion: All active development happens on the `develop` branch while
`master` is used to create tagged releases from.
### Pull Requests
Using Git-Flow means that PRs have the highest chance of getting
accepted and merged when you open them on the `develop` branch of your
fork. That allows for some post-merge changes by the team without
directly compromising the `master` branch, which is supposed to hold
always be in a release-ready state.
## JavaScript Standard Style Guide
The `npm lint` script verifies code compliance with the `standard`
style. If PRs deviate from this coding style, they will immediately fail
their build and will not be merged until compliant.
[](https://github.com/feross/standard)
> In case your PR is failing from style guide issues try running
> `standard --fix` over your code - this will fix all syntax or code
> style issues automatically without breaking your code. You might need
> to `npm i -g standard` first.
## Testing
Pull Requests are verified to pass all of the following test stages
during the
[continuous integration build](https://travis-ci.org/juice-shop/juice-shop-ctf).
It is recommended that you run these tests on your local computer to
verify they pass before submitting a PR. New features should be
accompanied by an appropriate number of corresponding tests to verify
they behave as intended.
### Unit Tests
There is a full suite containing independent unit tests for each module.
```
npm test
```
### End-to-end Tests
The e2e tests simulate real input to the CLI as well as file-based
configuration and verify the output on the console and in the exported
archive file.
```
npm run e2e
```