diff --git a/CHANGELOG.md b/CHANGELOG.md
index a8cc5936..9419725c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,210 +1,2 @@
-# mochawesome-report-generator changelog
+# Goalkeeper-report-generator changelog
-## [Unreleased]
-
-## [4.0.1] / 2019-07-05
-### Changed
-- Video links in context now support mediafragment uris [mochawesome #287](https://github.com/adamgruber/mochawesome/issues/287)
-
-## [4.0.0] / 2019-06-04
-### Changed
-- Updated data validation to match mochawesome v4 changes
-- Updated many components for accessibility
-- Enhanced keyboard usage (tabbing / toggling)
-- Updated all dependencies
-- Implemented test fixtures for generating sample data
-- Small design tweaks
-- Allow suites to be collapsed
-- Disable charts by default
-
-## [3.1.5] / 2018-12-27
-### Changed
-- Relaxed validation for `timedOut` property in Tests to provide better compatibility with Cypress [#88](https://github.com/adamgruber/mochawesome-report-generator/issues/88)
-
-## [3.1.4] / 2018-10-05
-### Changed
-- Added `pending` and `skipped` to `TestState` enum. [#111](https://github.com/adamgruber/mochawesome-report-generator/issues/111)
-
-## [3.1.3] / 2018-07-18
-### Fixed
-- Updated webpack config to correctly set `devtool` to `false` when building for production. [#101](https://github.com/adamgruber/mochawesome-report-generator/issues/101)
-
-## [3.1.2] / 2018-04-20
-### Fixed
-- Skip copying assets and rendering HTML when `html` option is `false` [mochawesome #237](https://github.com/adamgruber/mochawesome/issues/237)
-
-## [3.1.1] / 2018-01-28
-### Added
-- Video links in context will render as `` tags [#87](https://github.com/adamgruber/mochawesome-report-generator/pull/87) (@NicholasBoll)
-
-## [3.1.0] / 2018-01-08
-### Added
-- New option: **`cdn`**. Set to `true` to load all report assets via CDN (unpkg.com). No assets will be copied to disk.
-- New option: **`assetsDir`**. Use this to specify a custom location to save the report assets to.
-- The CLI has been updated to support directories as agruments.
-- New options: **`showPassed`, `showFailed`, `showPending`, `showSkipped`**. Use these to set the default state of the report filters.
-
-### Changed
-- Excluded Mobx DevTools from production bundle
-- Dropped ChartJS in favor of Chartist
-- Dropped moment.js in favor of date-fns
-- Use a top-level `` component to make the report store available to all components
-
-## [3.0.1] / 2017-12-01
-No release is complete without a quick hotfix.
-
-### Fixed
-- The `transform-react-constant-elements` babel plugin was causing one of the React components to be hoisted as a `const` when it should not have been. This caused React to throw an error and the whole report to fail to load. (https://github.com/adamgruber/mochawesome/issues/215)
-
-## [3.0.0] / 2017-11-30
-### Added
-- The report now displays a loading animation when loading and when toggling filters.
-- The report version is now shown in the footer.
-- Functional tests to make development a little easier
-
-### Changed
-- **BREAKING:** mochawesome v3.0.0 introduces changes to its JSON output that are not backwards-compatible. As such, the report generator will not work with data created in older versions of mochawesome.
-
-- Options handling and file saving that was previously done in the reporter is now handled here where it makes more sense. In addition, support was added for the `saveJson` and `saveHtml` options.
-
-- Improved perceived rendering. The report no longer shows just a blank screen when loading a large number of tests. Instead, the navbar stats and footer will be rendered along with a nice loading animation. In addition, the filter toggles are now more responsive when filtering over a large number of suites/tests.
-
-- Nearly all components have been updated to use flexbox layout.
-
-- Unnecessary component renders have been significantly reduced.
-
-- Most dependencies have been updated to their latest versions.
-
-
-### [2.3.2] / 2017-11-13
-- Fix an issue where long test titles are truncated with no way to see the full title [#65](https://github.com/adamgruber/mochawesome-report-generator/issues/65)
-
-### [2.3.1] / 2017-10-23
-- Fix botched release
-
-## [2.3.0] / 2017-10-23
-- Add support for base64 images in test context [#60](https://github.com/adamgruber/mochawesome-report-generator/pull/60 - @gidztech
-
-### [2.2.2] / 2017-07-07
-- Fix an issue where `actual/expected` was being rendered in the CodeSnippet for non-diff code
-- Fix an issue where the suite header was not being rendered for root suites with tests
-
-### [2.2.1] / 2017-06-30
-- Enable inline diff rendering when using CLI. [#42](https://github.com/adamgruber/mochawesome-report-generator/pull/42)
-
-## [2.2.0] / 2017-06-29
-
-#### Updated / New
-- Render inline diffs when using mocha's `--inline-diffs` option [#39](https://github.com/adamgruber/mochawesome-report-generator/pull/39)
-- Set the default option for how hooks should display via the `showHooks` option [#41](https://github.com/adamgruber/mochawesome-report-generator/pull/41)
-- Add a new `context` display option for hooks which will only show hooks if they contain context [#41](https://github.com/adamgruber/mochawesome-report-generator/pull/41)
-
-#### Bug Fixes
-- Don't apply syntax highlighting when `context` is an object and `context.value` is a string [#40](https://github.com/adamgruber/mochawesome-report-generator/pull/40)
-- Various display issues [#36](https://github.com/adamgruber/mochawesome-report-generator/pull/36) [#38](https://github.com/adamgruber/mochawesome-report-generator/pull/38)
-
-### [2.1.1] / 2017-06-26
-- Remove `dangerouslySetInnerHTML` from CodeSnippet component. [#34](https://github.com/adamgruber/mochawesome-report-generator/issues/34)
-
-## [2.1.0] / 2017-06-08
-- Add support for displaying before and after hooks
-
-### [2.0.3] / 2017-05-09
-- Add support for rendering context with `undefined` or `null` value
-
-### [2.0.2] / 2017-04-25
-- Update package.json to spec `fsu` to `^1.0.2` which fixes compatibility with node 4
-
-## [2.0.0] / 2017-04-19
-- Add support for multiple files via CLI
-- New options: `overwrite` and `timestamp`
-
-#### Breaking
-- Change default `reportFilename` from `mochawesome` to same as input filename
-
-Prior to 2.0.0, the default report name was `mochawesome`. Now the default report name will be the same as the input filename. Example:
-```sh
-$ marge test/sample-data.json
-
-# before 2.0.0 => mochawesome-report/mochawesome.html
-# after 2.0.0 => mochawesome-report/sample-data.html
-```
-You can still use the `--reportFilename` flag to set the filename of the generated report.
-
-### [1.1.2] / 2017-03-13
-- Fix an issue where autoOpen did not work on Windows [mochawesome #142](https://github.com/adamgruber/mochawesome/issues/144)
-- Add `autoOpen` option to CLI
-
-### [1.1.1] / 2017-02-20
-- Fix an inconsistency between the diff output in the console and the diff output in the report [mochawesome #142](https://github.com/adamgruber/mochawesome/issues/142)
-- Fix an issue where the report assets would not get updated after upgrading package version. [mochawesome #138](https://github.com/adamgruber/mochawesome/issues/138)
-- Fix an issue where trying to copy text from code or context blocks would collapse the test. [mochawesome #138](https://github.com/adamgruber/mochawesome/issues/138)
-- Validate JSON input against schema before creating a report (CLI only)
-
-## [1.1.0]
-- Greenkeeping
-- Move some dependencies into devDependencies where they belong [mochawesome #133](https://github.com/adamgruber/mochawesome/issues/133)
-
-### [1.0.8] / 2017-02-16
-- Only copy external assets if they do not already exist [mochawesome #76](https://github.com/adamgruber/mochawesome/issues/76)
-
-### [1.0.7] / 2017-02-15
-- Fix an issue where test context could not be viewed if `enableCode` option was `false`. [mochawesome #132](https://github.com/adamgruber/mochawesome/issues/132)
-- Add an icon to indicate when a test has context
-
-### [1.0.6] / 2017-01-31
-- Layout and style fixes [mochawesome #118](https://github.com/adamgruber/mochawesome/issues/118)
-
-### [1.0.5] / 2017-01-30
-- Layout and style fixes [mochawesome #118](https://github.com/adamgruber/mochawesome/issues/118) (Broken)
-
-### [1.0.4] / 2017-01-23
-- Add support for local image paths in context
-
-### [1.0.3] / 2017-01-13
-- Fix an issue preventing a working report when `inlineAssets` option is `true` [mochawesome #109](https://github.com/adamgruber/mochawesome/issues/109)
-- Restore `autoOpen` functionality
-
-### [1.0.2] / 2016-12-27
-- Transpile `bin` and `lib` for compatibility with node 4
-
-### [1.0.1] / 2016-12-26
-- Better url handling in context
-
-## 1.0.0 / 2016-12-18
-- Initial release
-
-[Unreleased]: https://github.com/adamgruber/mochawesome-report-generator/compare/4.0.1...HEAD
-[4.0.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/4.0.0...4.0.1
-[4.0.0]: https://github.com/adamgruber/mochawesome-report-generator/compare/3.1.5...4.0.0
-[3.1.5]: https://github.com/adamgruber/mochawesome-report-generator/compare/3.1.4...3.1.5
-[3.1.4]: https://github.com/adamgruber/mochawesome-report-generator/compare/3.1.3...3.1.4
-[3.1.3]: https://github.com/adamgruber/mochawesome-report-generator/compare/3.1.2...3.1.3
-[3.1.2]: https://github.com/adamgruber/mochawesome-report-generator/compare/3.1.1...3.1.2
-[3.1.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/3.1.0...3.1.1
-[3.1.0]: https://github.com/adamgruber/mochawesome-report-generator/compare/3.0.1...3.1.0
-[3.0.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/3.0.0...3.0.1
-[3.0.0]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.3.2...3.0.0
-[2.3.2]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.3.1...2.3.2
-[2.3.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.3.0...2.3.1
-[2.3.0]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.2.2...2.3.0
-[2.2.2]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.2.1...2.2.2
-[2.2.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.2.0...2.2.1
-[2.2.0]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.1.1...2.2.0
-[2.1.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.1.0...2.1.1
-[2.1.0]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.0.3...2.1.0
-[2.0.3]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.0.2...2.0.3
-[2.0.2]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.0.1...2.0.2
-[2.0.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/2.0.0...2.0.1
-[2.0.0]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.1.2...2.0.0
-[1.1.2]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.1.1...1.1.2
-[1.1.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.1.0...1.1.1
-[1.1.0]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.8...1.1.0
-[1.0.8]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.7...1.0.8
-[1.0.7]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.6...1.0.7
-[1.0.6]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.5...1.0.6
-[1.0.5]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.5...1.0.5
-[1.0.4]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.3...1.0.4
-[1.0.3]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.2...1.0.3
-[1.0.2]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.1...1.0.2
-[1.0.1]: https://github.com/adamgruber/mochawesome-report-generator/compare/1.0.0...1.0.1
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index c5e8acf3..248c2d47 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -5,8 +5,8 @@
**All bug reports and problem issues require example code**. In addition please submit the following:
- Platform you are running on
-- The version of mochawesome/mochawesome-report-generator you are using
-- How you are using mochawesome-report-generator (via CLI, inside mochawesome, or some other means)
+- The version you are using
+- How you are using (via CLI, inside mochawesome, or some other means)
Providing a sample test is the best way to get your issue addressed and without it your issue may be closed.
You must provide a clear and simple way to reproduce the issue.
diff --git a/README.md b/README.md
index efcc8d97..7c31add5 100644
--- a/README.md
+++ b/README.md
@@ -1,169 +1,9 @@
-mochawesome-report-generator (marge)
+Goalkeeper-report-generator
============================
-[![npm](https://img.shields.io/npm/v/mochawesome-report-generator.svg)](http://www.npmjs.com/package/mochawesome-report-generator) [![Build Status](https://img.shields.io/travis/adamgruber/mochawesome-report-generator/master.svg)](https://travis-ci.org/adamgruber/mochawesome-report-generator) [![Test Coverage](https://api.codeclimate.com/v1/badges/613427ae1baabfb75360/test_coverage)](https://codeclimate.com/github/adamgruber/mochawesome-report-generator/test_coverage) [![Maintainability](https://api.codeclimate.com/v1/badges/613427ae1baabfb75360/maintainability)](https://codeclimate.com/github/adamgruber/mochawesome-report-generator/maintainability)
-**marge** (**m**och**a**wesome-**r**eport-**ge**nerator) is the counterpart to [mochawesome][2], a custom reporter for use with the Javascript testing framework, [mocha][1]. Marge takes the JSON output from [mochawesome][2] and generates a full fledged HTML/CSS report that helps visualize your test suites.
+This project is forked from [mochawesome-report-generator](https://github.com/adamgruber/mochawesome-report-generator) to work with Goalkeepr.
-## Features
+## Work with Goalkeeper
-
+Run `npm run prepack` and then `yarn link` to debug.
-- Simple, clean, and modern design
-- Support for test and suite nesting
-- Displays before and after hooks
-- Review test code inline
-- Stack trace for failed tests
-- Support for adding context information to tests
-- Filters to display only the tests you want
-- Responsive and mobile-friendly
-- Offline viewing
-- CLI for generating reports independent of [mochawesome][2]
-
-## Usage with mochawesome
-
-1. Add Mochawesome to your project:
-
- `npm install --save-dev mochawesome`
-
-2. Tell mocha to use the Mochawesome reporter:
-
- `mocha testfile.js --reporter mochawesome`
-
-3. If using mocha programatically:
-
- ```js
- var mocha = new Mocha({
- reporter: 'mochawesome'
- });
- ```
-
-## CLI Usage
-
-Install mochawesome-report-generator package
-```bash
-npm install -g mochawesome-report-generator
-```
-
-Run the command
-```bash
-marge [options] data_file [data_file2 ...]
-```
-
-## Output
-**marge** generates the following inside your project directory:
-```
-mochawesome-report/
-├── assets
-│ ├── app.css
-│ ├── app.js
-│ ├── MaterialIcons-Regular.woff
-│ ├── MaterialIcons-Regular.woff2
-│ ├── roboto-light-webfont.woff
-│ ├── roboto-light-webfont.woff2
-│ ├── roboto-medium-webfont.woff
-│ ├── roboto-medium-webfont.woff2
-│ ├── roboto-regular-webfont.woff
-│ └── roboto-regular-webfont.woff2
-└── mochawesome.html
-```
-
-## Options
-
-### CLI Flags
-
-**marge** can be configured via the following command line flags:
-
-Flag | Type | Default | Description
-:--- | :--- | :------ | :----------
--f, --reportFilename | string | | Filename of saved report
--o, --reportDir | string | [cwd]/mochawesome-report | Path to save report
--t, --reportTitle | string | mochawesome | Report title
--p, --reportPageTitle | string | mochawesome-report | Browser title
--i, --inline | boolean | false | Inline report assets (scripts, styles)
---cdn | boolean | false | Load report assets via CDN (unpkg.com)
---assetsDir | string | [cwd]/mochawesome-report/assets | Path to save report assets (js/css)
---charts | boolean | false | Display Suite charts
---code | boolean | true | Display test code
---autoOpen | boolean | false | Automatically open the report
---overwrite | boolean | true | Overwrite existing report files. *See [notes](#overwrite).*
---timestamp, --ts | string | | Append timestamp in specified format to report filename. *See [notes](#timestamp).*
---showPassed | boolean | true | Set initial state of "Show Passed" filter
---showFailed | boolean | true | Set initial state of "Show Failed" filter
---showPending | boolean | true | Set initial state of "Show Pending" filter
---showSkipped | boolean | false | Set initial state of "Show Skipped" filter
---showHooks | string | failed | Set the default display mode for hooks
---saveJson | boolean | false |Should report data be saved to JSON file
---saveHtml | boolean | true | Should report be saved to HTML file
---dev | boolean | false | Enable dev mode (requires local webpack dev server)
--h, --help | | | Show CLI help
-
-
-*Boolean options can be negated by adding `--no` before the option. For example: `--no-code` would set `code` to `false`.*
-
-#### Overwrite
-By default, report files are overwritten by subsequent report generation. Passing `--overwrite=false` will not replace existing files. Instead, if a duplicate filename is found, the report will be saved with a counter digit added to the filename. (ie. `mochawesome_001.html`).
-
-**Note:** `overwrite` will always be `false` when passing multiple files or using the `timestamp` option.
-
-#### Timestamp
-The `timestamp` option can be used to append a timestamp to the report filename. It uses [dateformat][] to parse format strings so you can pass any valid string that [dateformat][] accepts with a few exceptions. In order to produce valid filenames, the following
-replacements are made:
-
-Characters | Replacement | Example | Output
-:--- | :--- | :--- | :---
-spaces, commas | underscore | Wed March 29, 2017 | Wed_March_29_2017
-slashes | hyphen | 3/29/2017 | 3-29-2017
-colons | null | 17:46:21 | 174621
-
-Further, if you pass the flag with no format string, it will default to `isoDateTime`.
-
-### mochawesome `reporter-options`
-
-The above CLI flags can be used as `reporter-options` when using the mochawesome reporter.
-
-Use them in a `mocha.opts` file:
-```js
---reporter mochawesome
---reporter-options overwrite=true,reportTitle=My\ Custom\ Title,showPassed=false
-```
-
-or as an object when using mocha programmatically:
-
-```js
-const mocha = new Mocha({
- reporter: 'mochawesome',
- reporterOptions: {
- overwrite: true,
- reportTitle: 'My Custom Title',
- showPassed: false
- }
-});
-```
-
-## Development
-
-To develop locally, clone the repo and install dependencies. In order to test end-to-end you must also clone [mochawesome][2] into a directory at the same level as this repo.
-
-You can start the dev server with `npm run devserver`. If you are working on the CLI, use `npm run dev:cli` to watch for changes and rebuild.
-
-### Running Tests
-
-#### Unit Tests
-To run unit tests, simply use `npm run test`. You can also run a single unit test with `npm run test:single path/to/test.js`.
-
-#### Functional Tests
-Functional tests allow you to run real-world test cases in order to debug the output report. First, start up the dev server in one terminal window with `npm run devserver`. Then, in another window, run the tests with `npm run test:functional`. This will generate a report that you can open in the browser and debug.
-
-If you want to run a specific folder of functional tests:
-`npm run test:functional path/to/tests`
-
-Or if you want to run a single test:
-`npm run test:functional path/to/test.js`
-
-Or mix and match:
-`npm run test:functional path/to/some/tests path/to/another/test.js`
-
-[1]: https://mochajs.org/
-[2]: https://github.com/adamgruber/mochawesome
-[dateformat]: https://github.com/felixge/node-dateformat
-[CHANGELOG]: CHANGELOG.md
diff --git a/package-lock.json b/package-lock.json
index 43c2e1de..1d24c28f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "mochawesome-report-generator",
- "version": "4.0.1",
+ "version": "0.0.6",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -1272,6 +1272,21 @@
}
}
},
+ "@babel/runtime": {
+ "version": "7.7.2",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.7.2.tgz",
+ "integrity": "sha512-JONRbXbTXc9WQE2mAZd1p0Z3DZ/6vaQIkgYMSTP3KjRCyd7rCZCcfhCyX+YjwcKxcZ82UrxbRD358bpExNgrjw==",
+ "requires": {
+ "regenerator-runtime": "^0.13.2"
+ },
+ "dependencies": {
+ "regenerator-runtime": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
+ "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw=="
+ }
+ }
+ },
"@babel/template": {
"version": "7.2.2",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/@babel/template/-/template-7.2.2.tgz",
@@ -5966,7 +5981,8 @@
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"aproba": {
"version": "1.2.0",
@@ -5990,13 +6006,15 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
+ "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -6013,19 +6031,22 @@
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"console-control-strings": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"core-util-is": {
"version": "1.0.2",
@@ -6156,7 +6177,8 @@
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"ini": {
"version": "1.3.5",
@@ -6170,6 +6192,7 @@
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
"dev": true,
+ "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -6186,6 +6209,7 @@
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
+ "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -6194,13 +6218,15 @@
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"minipass": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz",
"integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==",
"dev": true,
+ "optional": true,
"requires": {
"safe-buffer": "^5.1.1",
"yallist": "^3.0.0"
@@ -6221,6 +6247,7 @@
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"dev": true,
+ "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -6309,7 +6336,8 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
"integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"object-assign": {
"version": "4.1.1",
@@ -6323,6 +6351,7 @@
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dev": true,
+ "optional": true,
"requires": {
"wrappy": "1"
}
@@ -6418,7 +6447,8 @@
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
"integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
- "dev": true
+ "dev": true,
+ "optional": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -6460,6 +6490,7 @@
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
"dev": true,
+ "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -6481,6 +6512,7 @@
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"dev": true,
+ "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -6529,13 +6561,15 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
- "dev": true
+ "dev": true,
+ "optional": true
},
"yallist": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz",
"integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=",
- "dev": true
+ "dev": true,
+ "optional": true
}
}
},
@@ -6792,6 +6826,11 @@
"integrity": "sha1-8nNdwig2dPpnR4sQGBBZNVw2nl4=",
"dev": true
},
+ "gud": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/gud/-/gud-1.0.0.tgz",
+ "integrity": "sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw=="
+ },
"handle-thing": {
"version": "2.0.0",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/handle-thing/-/handle-thing-2.0.0.tgz",
@@ -6921,6 +6960,19 @@
"integrity": "sha1-ctTY13nsBmr5oXyxQ2DD3vCqV8Q=",
"dev": true
},
+ "history": {
+ "version": "4.10.1",
+ "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz",
+ "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==",
+ "requires": {
+ "@babel/runtime": "^7.1.2",
+ "loose-envify": "^1.2.0",
+ "resolve-pathname": "^3.0.0",
+ "tiny-invariant": "^1.0.2",
+ "tiny-warning": "^1.0.0",
+ "value-equal": "^1.0.1"
+ }
+ },
"hmac-drbg": {
"version": "1.0.1",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
@@ -6936,7 +6988,6 @@
"version": "3.2.1",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/hoist-non-react-statics/-/hoist-non-react-statics-3.2.1.tgz",
"integrity": "sha1-wJwFVchLOKft5pErYe/dr9bnXh4=",
- "dev": true,
"requires": {
"react-is": "^16.3.2"
}
@@ -8197,6 +8248,12 @@
"integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=",
"dev": true
},
+ "lodash.isempty": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz",
+ "integrity": "sha1-b4bL7di+TsmHvpqvM8loTbGzHn4=",
+ "dev": true
+ },
"lodash.isequal": {
"version": "4.5.0",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
@@ -8208,12 +8265,24 @@
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz",
"integrity": "sha1-Bt4l302zJ6yTGYHRvbBn5a9o0FE="
},
+ "lodash.isobject": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz",
+ "integrity": "sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0=",
+ "dev": true
+ },
"lodash.isplainobject": {
"version": "4.0.6",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
"integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=",
"dev": true
},
+ "lodash.isstring": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
+ "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=",
+ "dev": true
+ },
"lodash.memoize": {
"version": "4.1.2",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
@@ -8600,6 +8669,16 @@
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/mimic-fn/-/mimic-fn-1.2.0.tgz",
"integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI="
},
+ "mini-create-react-context": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/mini-create-react-context/-/mini-create-react-context-0.3.2.tgz",
+ "integrity": "sha512-2v+OeetEyliMt5VHMXsBhABoJ0/M4RCe7fatd/fBy6SMiKazUSEt3gxxypfnk2SHMkdBYvorHRoQxuGoiwbzAw==",
+ "requires": {
+ "@babel/runtime": "^7.4.0",
+ "gud": "^1.0.0",
+ "tiny-warning": "^1.0.2"
+ }
+ },
"mini-css-extract-plugin": {
"version": "0.5.0",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/mini-css-extract-plugin/-/mini-css-extract-plugin-0.5.0.tgz",
@@ -8801,6 +8880,68 @@
}
}
},
+ "mochawesome": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/mochawesome/-/mochawesome-4.1.0.tgz",
+ "integrity": "sha512-U23K19mLqmuBqFyIBl7FVkcIuG/2JYStCj+91WmxK1/psLgHlWBEZsNe25U0x4t1Eqgu55aHv+0utLwzfhnupw==",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.4.1",
+ "diff": "^4.0.1",
+ "json-stringify-safe": "^5.0.1",
+ "lodash.isempty": "^4.4.0",
+ "lodash.isfunction": "^3.0.9",
+ "lodash.isobject": "^3.0.2",
+ "lodash.isstring": "^4.0.1",
+ "mochawesome-report-generator": "^4.0.0",
+ "strip-ansi": "^5.0.0",
+ "uuid": "^3.3.2"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
+ "dev": true
+ },
+ "diff": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.1.tgz",
+ "integrity": "sha512-s2+XdvhPCOF01LRQBC8hf4vhbVmI2CGS5aZnxLJlT5FtdhPCDFq80q++zK2KlrVorVDdL5BOGZ/VfLrVtYNF+Q==",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ }
+ }
+ },
+ "mochawesome-report-generator": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/mochawesome-report-generator/-/mochawesome-report-generator-4.0.1.tgz",
+ "integrity": "sha512-hQbmQt8/yCT68GjrQFat+Diqeuka3haNllexYfja1+y0hpwi3yCJwFpQCdWK9ezzcXL3Nu80f2I6SZeyspwsqg==",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.4.2",
+ "dateformat": "^3.0.2",
+ "fs-extra": "^7.0.0",
+ "fsu": "^1.0.2",
+ "lodash.isfunction": "^3.0.8",
+ "opener": "^1.4.2",
+ "prop-types": "^15.7.2",
+ "react": "^16.8.5",
+ "react-dom": "^16.8.5",
+ "tcomb": "^3.2.17",
+ "tcomb-validation": "^3.3.0",
+ "validator": "^10.11.0",
+ "yargs": "^13.2.2"
+ }
+ },
"module-not-found-error": {
"version": "1.0.1",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/module-not-found-error/-/module-not-found-error-1.0.1.tgz",
@@ -9074,7 +9215,8 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"aproba": {
"version": "1.2.0",
@@ -9095,12 +9237,14 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -9115,17 +9259,20 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"core-util-is": {
"version": "1.0.2",
@@ -9242,7 +9389,8 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"ini": {
"version": "1.3.5",
@@ -9254,6 +9402,7 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -9268,6 +9417,7 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -9275,12 +9425,14 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -9299,6 +9451,7 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -9379,7 +9532,8 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"object-assign": {
"version": "4.1.1",
@@ -9391,6 +9545,7 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"wrappy": "1"
}
@@ -9476,7 +9631,8 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -9512,6 +9668,7 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -9531,6 +9688,7 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -9574,12 +9732,14 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
}
}
},
@@ -11180,7 +11340,6 @@
"version": "1.7.0",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/path-to-regexp/-/path-to-regexp-1.7.0.tgz",
"integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=",
- "dev": true,
"requires": {
"isarray": "0.0.1"
},
@@ -11188,8 +11347,7 @@
"isarray": {
"version": "0.0.1",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
- "dev": true
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
}
}
},
@@ -12802,8 +12960,7 @@
"react-is": {
"version": "16.7.0",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/react-is/-/react-is-16.7.0.tgz",
- "integrity": "sha1-wb0hxk8fE2TG9waV7ALWk5L0G/o=",
- "dev": true
+ "integrity": "sha1-wb0hxk8fE2TG9waV7ALWk5L0G/o="
},
"react-lifecycles-compat": {
"version": "3.0.4",
@@ -12811,6 +12968,37 @@
"integrity": "sha1-TxonOv38jzSIqMUWv9p4+HI1I2I=",
"dev": true
},
+ "react-router": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.1.2.tgz",
+ "integrity": "sha512-yjEuMFy1ONK246B+rsa0cUam5OeAQ8pyclRDgpxuSCrAlJ1qN9uZ5IgyKC7gQg0w8OM50NXHEegPh/ks9YuR2A==",
+ "requires": {
+ "@babel/runtime": "^7.1.2",
+ "history": "^4.9.0",
+ "hoist-non-react-statics": "^3.1.0",
+ "loose-envify": "^1.3.1",
+ "mini-create-react-context": "^0.3.0",
+ "path-to-regexp": "^1.7.0",
+ "prop-types": "^15.6.2",
+ "react-is": "^16.6.0",
+ "tiny-invariant": "^1.0.2",
+ "tiny-warning": "^1.0.0"
+ }
+ },
+ "react-router-dom": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.1.2.tgz",
+ "integrity": "sha512-7BPHAaIwWpZS074UKaw1FjVdZBSVWEk8IuDXdB+OkLb8vd/WRQIpA4ag9WQk61aEfQs47wHyjWUoUGGZxpQXew==",
+ "requires": {
+ "@babel/runtime": "^7.1.2",
+ "history": "^4.9.0",
+ "loose-envify": "^1.3.1",
+ "prop-types": "^15.6.2",
+ "react-router": "5.1.2",
+ "tiny-invariant": "^1.0.2",
+ "tiny-warning": "^1.0.0"
+ }
+ },
"react-test-renderer": {
"version": "16.8.5",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/react-test-renderer/-/react-test-renderer-16.8.5.tgz",
@@ -13224,6 +13412,11 @@
"integrity": "sha1-SrzYUq0y3Xuqv+m0DgCjbbXzkuY=",
"dev": true
},
+ "resolve-pathname": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz",
+ "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng=="
+ },
"resolve-url": {
"version": "0.2.1",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/resolve-url/-/resolve-url-0.2.1.tgz",
@@ -14718,6 +14911,16 @@
"integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=",
"dev": true
},
+ "tiny-invariant": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.0.6.tgz",
+ "integrity": "sha512-FOyLWWVjG+aC0UqG76V53yAWdXfH8bO6FNmyZOuUrzDzK8DI3/JRY25UD7+g49JWM1LXwymsKERB+DzI0dTEQA=="
+ },
+ "tiny-warning": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz",
+ "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA=="
+ },
"tmp": {
"version": "0.0.33",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/tmp/-/tmp-0.0.33.tgz",
@@ -15338,6 +15541,11 @@
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/validator/-/validator-10.11.0.tgz",
"integrity": "sha1-ADEI6m6amHTTHMyeUAaFbM12sig="
},
+ "value-equal": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz",
+ "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw=="
+ },
"vary": {
"version": "1.1.2",
"resolved": "http://artifactory.aweber.io:80/api/npm/npm/vary/-/vary-1.1.2.tgz",
diff --git a/package.json b/package.json
index 794bef2c..c0f43cce 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
- "name": "mochawesome-report-generator",
- "version": "4.0.1",
- "description": "Generates gorgeous HTML reports from mochawesome reporter.",
+ "name": "goalkeeper-report-generator",
+ "version": "0.0.6",
+ "description": "Generates gorgeous HTML reports from mochawesome reporter, used for Goalkeeper.",
"scripts": {
"lint": "eslint src test --ext js",
"stylelint": "stylelint src/**/*.css src/components/**/*.css",
@@ -23,11 +23,11 @@
"dev": "npm run compile && npm run cli && npm run devserver",
"dev:cli": "nodemon --watch src/bin --watch src/lib --exec npm run compile"
},
- "author": "Adam Gruber",
+ "author": "houce",
"license": "MIT",
"repository": {
"type": "git",
- "url": "https://github.com/adamgruber/mochawesome-report-generator"
+ "url": "https://github.com/HOUCe/goalkeeper-report-generator"
},
"keywords": [
"mochawesome",
@@ -35,7 +35,9 @@
"reporter",
"json",
"react",
- "report generator"
+ "report generator",
+ "goalkeeper",
+ "e2e"
],
"main": "lib/main.js",
"bin": {
@@ -83,6 +85,7 @@
"prop-types": "^15.7.2",
"react": "^16.8.5",
"react-dom": "^16.8.5",
+ "react-router-dom": "^5.1.2",
"tcomb": "^3.2.17",
"tcomb-validation": "^3.3.0",
"validator": "^10.11.0",
@@ -135,6 +138,7 @@
"mobx-react": "^5.2.8",
"mobx-react-devtools": "^6.1.1",
"mocha": "^6.0.2",
+ "mochawesome": "^4.1.0",
"nodemon": "^1.18.10",
"normalize.css": "^8.0.0",
"nyc": "^13.3.0",
diff --git a/src/bin/cli.js b/src/bin/cli.js
index 4285d3ec..2218b369 100755
--- a/src/bin/cli.js
+++ b/src/bin/cli.js
@@ -12,7 +12,7 @@ yargs
.help('help')
.alias('h', 'help')
.version()
- .epilog('Copyright 2016-2017 Adam Gruber').argv;
+ .epilog('Copyright Goalkeeper').argv;
// Call the main cli program
marge(yargs.argv);
diff --git a/src/client/components/footer/index.js b/src/client/components/footer/index.js
index c788a0bd..59ca3e0a 100644
--- a/src/client/components/footer/index.js
+++ b/src/client/components/footer/index.js
@@ -21,11 +21,11 @@ const Footer = ({ version }) => {
{copyrightYear}
- Mochawesome
+ GoalKeeper
was designed and built by
- Adam Gruber
+ 知乎会员前端
{' '}
• v{version}
diff --git a/src/client/components/index.js b/src/client/components/index.js
index f4050804..c50977dd 100644
--- a/src/client/components/index.js
+++ b/src/client/components/index.js
@@ -5,6 +5,7 @@ export { default as Footer } from './footer';
export { default as Icon } from './material-icon';
export { default as Loader } from './loader';
export { default as MochawesomeReport } from './report';
+export { default as ReportDetail } from './report-detail';
export { default as Navbar } from './navbar';
export * from './nav-menu';
export { default as QuickSummary } from './quick-summary';
diff --git a/src/client/components/navbar/index.js b/src/client/components/navbar/index.js
index 12e261b3..aad17081 100644
--- a/src/client/components/navbar/index.js
+++ b/src/client/components/navbar/index.js
@@ -6,7 +6,7 @@ import styles from './navbar.css';
const cx = classNames.bind(styles);
-const Navbar = ({ onMenuClick, reportTitle, stats }) => {
+const Navbar = ({ onMenuClick, reportTitle, stats, icon = 'menu', showQuickSummary = true }) => {
const { passPercent, pendingPercent } = stats;
const failPercent = 100 - passPercent;
@@ -28,15 +28,17 @@ const Navbar = ({ onMenuClick, reportTitle, stats }) => {
type="button"
onClick={onMenuClick}
className={cx('menu-button', 'open-menu')}>
-
+
{reportTitle}
-
-
-
+ {showQuickSummary && (
+
+
+
+ )}
{showPctBar && (
{allPending && pctBar(pendingPercent, 'pend', 'Pending')}
@@ -52,6 +54,8 @@ Navbar.propTypes = {
onMenuClick: PropTypes.func,
reportTitle: PropTypes.string,
stats: PropTypes.object,
+ icon: PropTypes.string,
+ showQuickSummary: PropTypes.bool
};
Navbar.displayName = 'Navbar';
diff --git a/src/client/components/report-detail.js b/src/client/components/report-detail.js
new file mode 100644
index 00000000..40d3a1d8
--- /dev/null
+++ b/src/client/components/report-detail.js
@@ -0,0 +1,42 @@
+import React from 'react';
+import PropTypes from 'prop-types';
+import { Provider, observer } from 'mobx-react';
+import { withRouter } from "react-router";
+import { Footer, Navbar } from 'components';
+import { NavMenu } from 'components/nav-menu';
+import 'styles/app.global.css';
+import MobxDevTool from './mobxDevtool';
+
+const ReportDetail = observer(props => {
+ const {store, history} = props
+ const { devMode, VERSION, reportTitle, stats } = store;
+
+ return (
+
+
+ {
+ history.goBack()
+ }}
+ stats={stats}
+ showQuickSummary={false}
+ icon="arrow_back"
+ reportTitle={reportTitle}
+ />
+ ReportDetail
+
+
+ {devMode && }
+
+
+ );
+});
+
+ReportDetail.propTypes = {
+ store: PropTypes.object,
+ history: PropTypes.object
+};
+
+ReportDetail.displayName = 'ReportDetail';
+
+export default withRouter(ReportDetail);
diff --git a/src/client/components/test/test.js b/src/client/components/test/test.js
index 28ba5822..8888a9d6 100644
--- a/src/client/components/test/test.js
+++ b/src/client/components/test/test.js
@@ -140,7 +140,7 @@ class Test extends PureComponent {
/>
)}
- {!!err.message && {err.message}
}
+ {!!err.message &&
}
{expanded && (
diff --git a/src/client/js/App.js b/src/client/js/App.js
new file mode 100644
index 00000000..da72c3be
--- /dev/null
+++ b/src/client/js/App.js
@@ -0,0 +1,46 @@
+import React from "react";
+import {
+ BrowserRouter as Router,
+ Switch,
+ Route,
+ Link,
+} from "react-router-dom";
+import PropTypes from 'prop-types';
+import { MochawesomeReport, ReportDetail } from '../components';
+
+const App = ({store}) => {
+ return (
+
+
+
+
+
+ Dashboard
+
+
+ reports
+
+
+
+
+
+
+
+
+
+
+
+
+ Dashboard
+
+
+
+
+ );
+}
+
+App.propTypes = {
+ store: PropTypes.object,
+};
+
+export default App
diff --git a/src/client/js/mochawesome.js b/src/client/js/mochawesome.js
index 40856b51..2e6d17de 100644
--- a/src/client/js/mochawesome.js
+++ b/src/client/js/mochawesome.js
@@ -1,7 +1,8 @@
import React from 'react';
import ReactDOM from 'react-dom';
-import { MochawesomeReport } from 'components';
import hljs from 'highlight.js/lib/highlight';
+
+import App from './App';
import ReportStore from './reportStore';
// Register hljs languages
@@ -25,6 +26,6 @@ bodyEl.removeAttribute('data-config');
window.marge = store;
ReactDOM.render(
- React.createElement(MochawesomeReport, { store }),
+ ,
document.getElementById('report')
);
diff --git a/src/client/js/reportStore.js b/src/client/js/reportStore.js
index ad468ef4..13360c55 100644
--- a/src/client/js/reportStore.js
+++ b/src/client/js/reportStore.js
@@ -14,10 +14,11 @@ class ReportStore {
enableCode: !!config.enableCode,
initialLoadTimeout: 300,
reportTitle: config.reportTitle || data.reportTitle,
- results: data.results || [],
+ results: Array.isArray(data.results) ? data.results.reverse() : [],
showHooksOptions: ['failed', 'always', 'never', 'context'],
stats: data.stats || {},
VERSION: '__VERSION__',
+ e2eMedia: data.e2eMedia || {}
});
extendObservable(this, {
diff --git a/src/lib/main.js b/src/lib/main.js
index 236a6458..cf45277f 100644
--- a/src/lib/main.js
+++ b/src/lib/main.js
@@ -93,7 +93,7 @@ function getTimestampFormat(timestamp) {
*
* @return {string} Fully resolved path without extension
*/
-function getFilename({ reportDir, reportFilename = 'mochawesome', timestamp }) {
+function getFilename({ reportDir, rootDir = process.cwd() , reportFilename = 'mochawesome', timestamp }) {
let ts = '';
if (timestamp !== false && timestamp !== 'false') {
const format = getTimestampFormat(timestamp);
@@ -106,7 +106,7 @@ function getFilename({ reportDir, reportFilename = 'mochawesome', timestamp }) {
.replace(/:/g, '');
}
const filename = `${reportFilename.replace(fileExtRegex, '')}${ts}`;
- return path.resolve(process.cwd(), reportDir, filename);
+ return path.resolve(rootDir, reportDir, filename);
}
/**