Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/mocha-3.1.0/test/suite.spec.js')
-rw-r--r--tests/lib/mocha-3.1.0/test/suite.spec.js439
1 files changed, 0 insertions, 439 deletions
diff --git a/tests/lib/mocha-3.1.0/test/suite.spec.js b/tests/lib/mocha-3.1.0/test/suite.spec.js
deleted file mode 100644
index 54a1acd667..0000000000
--- a/tests/lib/mocha-3.1.0/test/suite.spec.js
+++ /dev/null
@@ -1,439 +0,0 @@
-var mocha = require('../')
- , Context = mocha.Context
- , Suite = mocha.Suite
- , Test = mocha.Test;
-
-describe('Suite', function(){
- describe('.clone()', function(){
- beforeEach(function(){
- this.suite = new Suite('To be cloned');
- this.suite._timeout = 3043;
- this.suite._slow = 101;
- this.suite._bail = true;
- this.suite.suites.push(1);
- this.suite.tests.push('hello');
- this.suite._beforeEach.push(2);
- this.suite._beforeAll.push(3);
- this.suite._afterEach.push(4);
- this.suite._afterAll.push(5);
- });
-
- it('should copy the title', function(){
- this.suite.clone().title.should.equal('To be cloned');
- });
-
- it('should copy the timeout value', function(){
- this.suite.clone().timeout().should.equal(3043);
- });
-
- it('should copy the slow value', function(){
- this.suite.clone().slow().should.equal(101);
- });
-
- it('should copy the bail value', function(){
- this.suite.clone().bail().should.be.true();
- });
-
- it('should not copy the values from the suites array', function(){
- this.suite.clone().suites.should.be.empty();
- });
-
- it('should not copy the values from the tests array', function(){
- this.suite.clone().tests.should.be.empty();
- });
-
- it('should not copy the values from the _beforeEach array', function(){
- this.suite.clone()._beforeEach.should.be.empty();
- });
-
- it('should not copy the values from the _beforeAll array', function(){
- this.suite.clone()._beforeAll.should.be.empty();
- });
-
- it('should not copy the values from the _afterEach array', function(){
- this.suite.clone()._afterEach.should.be.empty();
- });
-
- it('should not copy the values from the _afterAll array', function(){
- this.suite.clone()._afterAll.should.be.empty();
- });
- });
-
- describe('.timeout()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('when no argument is passed', function(){
- it('should return the timeout value', function(){
- this.suite.timeout().should.equal(2000);
- });
- });
-
- describe('when argument is passed', function(){
- it('should return the Suite object', function(){
- var newSuite = this.suite.timeout(5000);
- newSuite.timeout().should.equal(5000);
- });
- });
- });
-
- describe('.slow()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('when given a string', function(){
- it('should parse it', function(){
- this.suite.slow('5 seconds');
- this.suite.slow().should.equal(5000);
- })
- })
-
- describe('when no argument is passed', function(){
- it('should return the slow value', function(){
- this.suite.slow().should.equal(75);
- });
- });
-
- describe('when argument is passed', function(){
- it('should return the Suite object', function(){
- var newSuite = this.suite.slow(5000);
- newSuite.slow().should.equal(5000);
- });
- });
- });
-
- describe('.bail()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- this.suite._bail = true
- });
-
- describe('when no argument is passed', function(){
- it('should return the bail value', function(){
- this.suite.bail().should.be.true();
- });
- });
-
- describe('when argument is passed', function(){
- it('should return the Suite object', function(){
- var newSuite = this.suite.bail(false);
- newSuite.bail().should.be.false();
- });
- });
- });
-
- describe('.beforeAll()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('wraps the passed in function in a Hook', function(){
- it('adds it to _beforeAll', function(){
- var fn = function(){};
- this.suite.beforeAll(fn);
-
- this.suite._beforeAll.should.have.length(1);
- var beforeAllItem = this.suite._beforeAll[0];
- beforeAllItem.title.should.match(/^"before all" hook/);
- beforeAllItem.fn.should.equal(fn);
- });
-
- it('appends title to hook', function(){
- var fn = function(){};
- this.suite.beforeAll('test', fn);
-
- this.suite._beforeAll.should.have.length(1);
- var beforeAllItem = this.suite._beforeAll[0];
- beforeAllItem.title.should.equal('"before all" hook: test');
- beforeAllItem.fn.should.equal(fn);
-
- function namedFn(){}
- this.suite.beforeAll(namedFn);
- this.suite._beforeAll.should.have.length(2);
- beforeAllItem = this.suite._beforeAll[1];
- beforeAllItem.title.should.equal('"before all" hook: namedFn');
- beforeAllItem.fn.should.equal(namedFn);
- });
- });
- });
-
- describe('.afterAll()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('wraps the passed in function in a Hook', function(){
- it('adds it to _afterAll', function(){
- var fn = function(){};
- this.suite.afterAll(fn);
-
- this.suite._afterAll.should.have.length(1);
- var afterAllItem = this.suite._afterAll[0];
- afterAllItem.title.should.match(/^"after all" hook/);
- afterAllItem.fn.should.equal(fn);
- });
- it('appends title to hook', function(){
- var fn = function(){};
- this.suite.afterAll('test', fn);
-
- this.suite._afterAll.should.have.length(1);
- var beforeAllItem = this.suite._afterAll[0];
- beforeAllItem.title.should.equal('"after all" hook: test');
- beforeAllItem.fn.should.equal(fn);
-
- function namedFn(){}
- this.suite.afterAll(namedFn);
- this.suite._afterAll.should.have.length(2);
- beforeAllItem = this.suite._afterAll[1];
- beforeAllItem.title.should.equal('"after all" hook: namedFn');
- beforeAllItem.fn.should.equal(namedFn);
- });
- });
- });
-
- describe('.beforeEach()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('wraps the passed in function in a Hook', function(){
- it('adds it to _beforeEach', function(){
- var fn = function(){};
- this.suite.beforeEach(fn);
-
- this.suite._beforeEach.should.have.length(1);
- var beforeEachItem = this.suite._beforeEach[0];
- beforeEachItem.title.should.match(/^"before each" hook/);
- beforeEachItem.fn.should.equal(fn);
- });
-
- it('appends title to hook', function(){
- var fn = function(){};
- this.suite.beforeEach('test', fn);
-
- this.suite._beforeEach.should.have.length(1);
- var beforeAllItem = this.suite._beforeEach[0];
- beforeAllItem.title.should.equal('"before each" hook: test');
- beforeAllItem.fn.should.equal(fn);
-
- function namedFn(){}
- this.suite.beforeEach(namedFn);
- this.suite._beforeEach.should.have.length(2);
- beforeAllItem = this.suite._beforeEach[1];
- beforeAllItem.title.should.equal('"before each" hook: namedFn');
- beforeAllItem.fn.should.equal(namedFn);
- });
- });
- });
-
- describe('.afterEach()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('wraps the passed in function in a Hook', function(){
- it('adds it to _afterEach', function(){
- var fn = function(){};
- this.suite.afterEach(fn);
-
- this.suite._afterEach.should.have.length(1);
- var afterEachItem = this.suite._afterEach[0];
- afterEachItem.title.should.match(/^"after each" hook/);
- afterEachItem.fn.should.equal(fn);
- });
-
- it('appends title to hook', function(){
- var fn = function(){};
- this.suite.afterEach('test', fn);
-
- this.suite._afterEach.should.have.length(1);
- var beforeAllItem = this.suite._afterEach[0];
- beforeAllItem.title.should.equal('"after each" hook: test');
- beforeAllItem.fn.should.equal(fn);
-
- function namedFn(){}
- this.suite.afterEach(namedFn);
- this.suite._afterEach.should.have.length(2);
- beforeAllItem = this.suite._afterEach[1];
- beforeAllItem.title.should.equal('"after each" hook: namedFn');
- beforeAllItem.fn.should.equal(namedFn);
- });
- });
- });
-
- describe('.addSuite()', function(){
- beforeEach(function(){
- this.first = new Suite('First suite');
- this.first.timeout(4002);
- this.first.slow(200);
- this.second = new Suite('Second suite');
- this.first.addSuite(this.second);
- });
-
- it('sets the parent on the added Suite', function(){
- this.second.parent.should.equal(this.first);
- });
-
- it('copies the timeout value', function(){
- this.second.timeout().should.equal(4002);
- });
-
- it('copies the slow value', function(){
- this.second.slow().should.equal(200);
- });
-
- it('adds the suite to the suites collection', function(){
- this.first.suites.should.have.length(1);
- this.first.suites[0].should.equal(this.second);
- });
-
- it('treats suite as pending if its parent is pending', function(){
- this.first.pending = true
- this.second.isPending.should.be.true
- });
- });
-
- // describe('.addTest()', function(){
- // beforeEach(function(){
- // this.suite = new Suite('A Suite', new Context);
- // this.suite.timeout(4002);
- // this.test = new Test('test');
- // this.suite.addTest(this.test);
- // });
- //
- // it('sets the parent on the added test', function(){
- // this.test.parent.should.equal(this.suite);
- // });
- //
- // it('copies the timeout value', function(){
- // this.test.timeout().should.equal(4002);
- // });
- //
- // it('adds the test to the tests collection', function(){
- // this.suite.tests.should.have.length(1);
- // this.suite.tests[0].should.equal(this.test);
- // });
- // });
-
- describe('.fullTitle()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('when there is no parent', function(){
- it('returns the suite title', function(){
- this.suite.fullTitle().should.equal('A Suite');
- });
- });
-
- describe('when there is a parent', function(){
- it('returns the combination of parent\'s and suite\'s title', function(){
- var parentSuite = new Suite('I am a parent');
- parentSuite.addSuite(this.suite);
- this.suite.fullTitle().should.equal('I am a parent A Suite');
- });
- });
- });
-
- describe('.total()', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('when there are no nested suites or tests', function(){
- it('should return 0', function(){
- this.suite.total().should.equal(0);
- });
- });
-
- describe('when there are several tests in the suite', function(){
- it('should return the number', function(){
- this.suite.addTest(new Test('a child test'));
- this.suite.addTest(new Test('another child test'));
- this.suite.total().should.equal(2);
- });
- });
- });
-
- describe('.eachTest(fn)', function(){
- beforeEach(function(){
- this.suite = new Suite('A Suite');
- });
-
- describe('when there are no nested suites or tests', function(){
- it('should return 0', function(){
- var n = 0;
- function fn(){ n++; }
- this.suite.eachTest(fn);
- n.should.equal(0);
- });
- });
-
- describe('when there are several tests in the suite', function(){
- it('should return the number', function(){
- this.suite.addTest(new Test('a child test'));
- this.suite.addTest(new Test('another child test'));
-
- var n = 0;
- function fn(){ n++; }
- this.suite.eachTest(fn);
- n.should.equal(2);
- });
- });
-
- describe('when there are several levels of nested suites', function(){
- it('should return the number', function(){
- this.suite.addTest(new Test('a child test'));
- var suite = new Suite('a child suite');
- suite.addTest(new Test('a test in a child suite'));
- this.suite.addSuite(suite);
-
- var n = 0;
- function fn(){ n++; }
- this.suite.eachTest(fn);
- n.should.equal(2);
- });
- });
-
- });
-
- describe('initialization', function() {
- it('should throw an error if the title isn\'t a string', function() {
- (function() {
- new Suite(undefined, 'root');
- }).should.throw();
-
- (function() {
- new Suite(function(){}, 'root');
- }).should.throw();
- });
-
- it('should not throw if the title is a string', function() {
- (function() {
- new Suite('Bdd suite', 'root');
- }).should.not.throw();
- });
- });
-});
-
-describe('Test', function() {
- describe('initialization', function() {
- it('should throw an error if the title isn\'t a string', function() {
- (function() {
- new Test(function(){});
- }).should.throw();
-
- (function() {
- new Test(undefined, function(){});
- }).should.throw();
- });
-
- it('should not throw if the title is a string', function() {
- (function() {
- new Test('test-case', function(){});
- }).should.not.throw();
- });
- });
-}); \ No newline at end of file