Deno mini-port of @mozillasecurity/octo
Go to file
Christoph Diehl 3c297bdea2
Stick with require for overwriting String|Array prototypes
2018-03-20 00:55:16 +01:00
lib Stick with require for overwriting String|Array prototypes 2018-03-20 00:55:16 +01:00
tests Modify random.item to work with array-like objects and update tests 2017-07-20 15:29:37 -04:00
.editorconfig Add .editorconfig 2017-04-23 02:29:16 +03:00
.gitignore Add module based architecture 2018-03-19 04:23:05 +01:00
.jshintrc Add random to .jshintrc 2017-04-13 16:17:33 +03:00
.travis.yml Deploy to both github pages (always) & releases (tagged) 2017-06-07 12:34:17 -04:00
Gruntfile.js Add pre-commit hook for standard linter 2018-01-22 22:30:40 +01:00
LICENSE Add LICENSE 2017-04-22 23:09:22 +03:00
README.md Change 'homepage' URL to update to ES6 branch README.md 2018-03-19 07:08:40 +01:00
index.js Add linter fixes 2018-03-19 05:54:40 +01:00
karma.conf.js Add pre-commit hook for standard linter 2018-01-22 22:30:40 +01:00
package.json Use global namespace for overwriting String|Array prototypes 2018-03-20 00:03:55 +01:00
webpack.config.js Add linter fixes 2018-03-19 05:54:40 +01:00

README.md

Logo

A unified shared library which aids in building fuzzers for browsers or as complement for an already existing fuzzing framework.

JavaScript Style Guide Build Status Current Release Coverage Status IRC

Octo.js bundles core functions and generic boilerplate code commonly used in most frameworks for fuzzing browsers. It is designed for the sharing of improvements between our individual fuzzers, and with the purpose of reducing the maintainability of those core features with minimal effort.

Octo's future aims to be a stable, well-tested and well-documented standard library for fuzzing in a JavaScript environment.

Node

npm i @mozillasecurity/octo --save-dev
const {random} = require('@mozillasecurity/octo')

Browser

npm run build
<!-- Latest -->
https://mozillasecurity.github.io/octo/octo.js

<!-- Release -->
https://github.com/mozillasecurity/octo/releases/download/0.0.3/octo.js
<!-- Release -->
https://cdn.jsdelivr.net/gh/MozillaSecurity/octo@0.0.3/deploy/octo.js

Development

npm install
npm run build
npm run watch
npm run test:lint

Testing

Tests live in the tests/ subdirectory, and are written for QUnit. To run tests locally, open tests/index.html in a browser. The automated tests are run in Firefox or Chrome using Karma. To run the automated tests:

npm install
CHROME_BIN=chromium npm test

When adding new files, add them in index.html and karma.conf.js so they can be tested and included in coverage reports.