Вход Регистрация
Файл: error-kitty/node_modules/mocha/lib/interfaces/qunit.js
Строк: 103
<?php
/**
 * Module dependencies.
 */

var Suite = require('../suite')
  , 
Test = require('../test')
  , 
utils = require('../utils');

/**
 * QUnit-style interface:
 *
 *     suite('Array');
 *
 *     test('#length', function(){
 *       var arr = [1,2,3];
 *       ok(arr.length == 3);
 *     });
 *
 *     test('#indexOf()', function(){
 *       var arr = [1,2,3];
 *       ok(arr.indexOf(1) == 0);
 *       ok(arr.indexOf(2) == 1);
 *       ok(arr.indexOf(3) == 2);
 *     });
 *
 *     suite('String');
 *
 *     test('#length', function(){
 *       ok('foo'.length == 3);
 *     });
 *
 */

module.exports = function(suite){
  var 
suites = [suite];

  
suite.on('pre-require', function(contextfilemocha){

    
/**
     * Execute before running tests.
     */

    
context.before = function(namefn){
      
suites[0].beforeAll(namefn);
    };

    
/**
     * Execute after running tests.
     */

    
context.after = function(namefn){
      
suites[0].afterAll(namefn);
    };

    
/**
     * Execute before each test case.
     */

    
context.beforeEach = function(namefn){
      
suites[0].beforeEach(namefn);
    };

    
/**
     * Execute after each test case.
     */

    
context.afterEach = function(namefn){
      
suites[0].afterEach(namefn);
    };

    
/**
     * Describe a "suite" with the given `title`.
     */

    
context.suite = function(title){
      if (
suites.length 1suites.shift();
      var 
suite Suite.create(suites[0], title);
      
suite.file file;
      
suites.unshift(suite);
      return 
suite;
    };

    
/**
     * Exclusive test-case.
     */

    
context.suite.only = function(titlefn){
      var 
suite context.suite(titlefn);
      
mocha.grep(suite.fullTitle());
    };

    
/**
     * Describe a specification or test-case
     * with the given `title` and callback `fn`
     * acting as a thunk.
     */

    
context.test = function(titlefn){
      var 
test = new Test(titlefn);
      
test.file file;
      
suites[0].addTest(test);
      return 
test;
    };

    
/**
     * Exclusive test-case.
     */

    
context.test.only = function(titlefn){
      var 
test context.test(titlefn);
      var 
reString '^' utils.escapeRegexp(test.fullTitle()) + '$';
      
mocha.grep(new RegExp(reString));
    };

    
/**
     * Pending test case.
     */

    
context.test.skip = function(title){
      
context.test(title);
    };
  });
};
?>
Онлайн: 1
Реклама