12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- var BaseReporter = require('./base')
- var ProgressReporter = function (formatError, reportSlow, useColors, browserConsoleLogOptions) {
- BaseReporter.call(this, formatError, reportSlow, useColors, browserConsoleLogOptions)
- this.EXCLUSIVELY_USE_COLORS = false
- this._browsers = []
- this.writeCommonMsg = function (msg) {
- this.write(this._remove() + msg + this._render())
- }
- this.specSuccess = function () {
- this.write(this._refresh())
- }
- this.onBrowserComplete = function () {
- this.write(this._refresh())
- }
- this.onRunStart = function () {
- this._browsers = []
- this._isRendered = false
- }
- this.onBrowserStart = function (browser) {
- this._browsers.push(browser)
- if (this._isRendered) {
- this.write('\n')
- }
- this.write(this._refresh())
- }
- this._remove = function () {
- if (!this._isRendered) {
- return ''
- }
- var cmd = ''
- this._browsers.forEach(function () {
- cmd += '\x1B[1A' + '\x1B[2K'
- })
- this._isRendered = false
- return cmd
- }
- this._render = function () {
- this._isRendered = true
- return this._browsers.map(this.renderBrowser).join('\n') + '\n'
- }
- this._refresh = function () {
- return this._remove() + this._render()
- }
- }
- // PUBLISH
- module.exports = ProgressReporter
|