Skip to content

improve tests #1

@tunnckoCore

Description

@tunnckoCore

just backup, some thoughts

/*!
 * minibase-control-flow <https://github.com/node-minibase/minibase-control-flow>
 *
 * Copyright (c) Charlike Mike Reagent <@tunnckoCore> (http://www.tunnckocore.tk)
 * Released under the MIT license.
 */

/* jshint asi:true */

'use strict'

var assert = require('assert')
var isPromise = require('is-promise')
var MiniBase = require('minibase').MiniBase
var minitest = require('minibase-tests')
var plugin = require('./index')

function App (options) {
  if (!(this instanceof App)) {
    return new App(options)
  }
  MiniBase.call(this, options)
  this.use(plugin())
}
MiniBase.extend(App)

var suite = minitest(App)

// suite.addTest('should have `.parallel` and `.serial` methods', function () {
//   var app = new MiniBase()
//   app.use(plugin())
//   assert.strictEqual(typeof app.serial, 'function')
//   assert.strictEqual(typeof app.parallel, 'function')

//   return Promise.resolve()
// })

// suite.addTest('should both methods return promises', function () {
//   var base = new MiniBase()
//   base.use(plugin())

//   var p1 = base.serial([Promise.resolve(11)], function noop () {})
//   var p2 = base.parallel(['foo', Promise.resolve(22), 33])

//   assert.strictEqual(isPromise(p1), true)
//   assert.strictEqual(isPromise(p2), true)

//   return Promise.resolve()
// })

suite.runTests().then(function (result) {
  if (result.length) {
    result.forEach(function (test) {
      console.log('not ok', test.index, test.title)
      console.log('  ---')
      console.log(test.reason.stack.split('\n').slice(0, 4).map((line) => {
        return '  ' + line
      }).join('\n'))
      console.log('  ...')
    })
    return
  }

  // all tests count
  console.log('# tests', result.tests)
  // all tests minus errored tests is passed tests count
  console.log('# pass', result.tests - result.length)
  console.log('# ok')
})

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions