mirror of
https://github.com/flynx/test.js.git
synced 2026-07-14 07:07:23 +00:00
added ability to skip test from the stats...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
b81a214172
commit
e822179b10
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "ig-test",
|
"name": "ig-test",
|
||||||
"version": "1.6.4",
|
"version": "1.6.5",
|
||||||
"description": "experimental test runner....",
|
"description": "experimental test runner....",
|
||||||
"main": "test.js",
|
"main": "test.js",
|
||||||
"bin": {
|
"bin": {
|
||||||
|
|||||||
18
test.js
18
test.js
@ -569,13 +569,15 @@ function(spec, chain, mod_chain_length=1){
|
|||||||
//
|
//
|
||||||
//
|
//
|
||||||
// This will run
|
// This will run
|
||||||
// test(modifier(setup))
|
// test(assert, modifier(setup), skipTest)
|
||||||
// for each test in spec.tests
|
// for each test in spec.tests
|
||||||
// for each modifier in spec.modifiers
|
// for each modifier in spec.modifiers
|
||||||
// for each setup in spec.setups
|
// for each setup in spec.setups
|
||||||
// case()
|
// case(assert, skipTest)
|
||||||
// for each case in spec.cases
|
// for each case in spec.cases
|
||||||
//
|
//
|
||||||
|
// Calling skipTest() will remove current test from the stats.
|
||||||
|
//
|
||||||
//
|
//
|
||||||
var runTests =
|
var runTests =
|
||||||
module.runTests =
|
module.runTests =
|
||||||
@ -591,6 +593,14 @@ async function(spec, chain, stats, mod_chain_length=1, assert){
|
|||||||
time: stats.time || 0,
|
time: stats.time || 0,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
var makeSkipTest = function(){
|
||||||
|
var ran = false
|
||||||
|
return function(){
|
||||||
|
if(ran){
|
||||||
|
return }
|
||||||
|
ran = true
|
||||||
|
stats.tests-- } }
|
||||||
|
|
||||||
var started = Date.now()
|
var started = Date.now()
|
||||||
|
|
||||||
var queue = buildQueue(spec, chain, mod_chain_length)
|
var queue = buildQueue(spec, chain, mod_chain_length)
|
||||||
@ -613,7 +623,7 @@ async function(spec, chain, stats, mod_chain_length=1, assert){
|
|||||||
var d = await setups[s](_assert)
|
var d = await setups[s](_assert)
|
||||||
for(var mod of m){
|
for(var mod of m){
|
||||||
d = await modifiers[mod](_assert, d) }
|
d = await modifiers[mod](_assert, d) }
|
||||||
await tests[t](_assert, d) }
|
await tests[t](_assert, d, makeSkipTest()) }
|
||||||
|
|
||||||
// cases...
|
// cases...
|
||||||
var case_assert = assert == null ?
|
var case_assert = assert == null ?
|
||||||
@ -622,7 +632,7 @@ async function(spec, chain, stats, mod_chain_length=1, assert){
|
|||||||
: assert.push('[CASE]')
|
: assert.push('[CASE]')
|
||||||
for(var c of queue.cases){
|
for(var c of queue.cases){
|
||||||
stats.tests += 1
|
stats.tests += 1
|
||||||
await cases[c](case_assert.push(c)) }
|
await cases[c](case_assert.push(c), makeSkipTest()) }
|
||||||
|
|
||||||
// runtime...
|
// runtime...
|
||||||
stats.time += Date.now() - started
|
stats.time += Date.now() - started
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user