Mocha: 2000ms рдХрд╛ рд╕рдордпрдмрд╛рд╣реНрдп рдкрд╛рд░ рд╣реЛ рдЧрдпрд╛ред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЗрд╕ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛() рдХреЙрд▓рдмреИрдХ рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдХреЛ рдирд┐рд░реНрдорд┐рдд 26 рджрд┐рд╕ре░ 2015  ┬╖  19рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: mochajs/mocha

рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдкреВрд░реЗ рд╕реВрдЯ рдХреЛ рдЪрд▓рд╛рддреЗ рд╕рдордп рдореБрдЭреЗ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ:

timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.

рдореБрдЭреЗ StackOverflow рдкрд░ рдпрд╣ рд╕реБрдкрд░ рдЙрдкрдпреЛрдЧреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдорд┐рд▓реА http://stackoverflow.com/questions/16607039/in-mocha-testing- while-calling-asynchronous-function-how-to-avoid-the-timeout-er# рдФрд░ рдпрд╣рд╛рдВ https: //github.com/mochajs/mocha/pull/278

рд╣рд╛рд▓рд╛рдБрдХрд┐, HTTP рдФрд░ рд╡рд╛рджреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рд╡рд╛рд▓реЗ рдореЗрд░реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╣рд░ рдШрдЯрдирд╛ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрд╛рдж рднреА рд╕рдорд╕реНрдпрд╛ рдмрдиреА рд░рд╣рддреА рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдм рдХреЗрд╡рд▓ рдХреЛрдгреАрдп рдирд┐рд░реНрджреЗрд╢ рдФрд░ рдирд┐рдпрдВрддреНрд░рдХ рдЪрд╢реНрдорд╛ рд╣реИрдВ рдЬреЛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдбреЗрдЯрд╛, рдирд┐рд░реНрджреЗрд╢ рдФрд░ рдирд┐рдпрдВрддреНрд░рдХ рддрд░реНрдХ рдХреА рдЬрд╛рдБрдЪ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЛ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рднреА рдХреНрдпреЛрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдпрджрд┐ рдХреЛрдИ рдмреЗрд╣рддрд░ рддрд░реАрдХрд╛ рд╣реИ рддреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХрд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИ? рдзрдиреНрдпрд╡рд╛рдж!

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдмрд╕ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рддрд╣рдд рдЬрд╕рди

       "scripts": {
            "start": "SET NODE_ENV=dev && node ./bin/www",
            "devstart": "SET NODE_ENV=dev && nodemon ./bin/www",
            "test": "mocha --timeout 10000"  <= increase this from 1000 to 10000
        },

рддрдм рдЖрдк рдмрд╕ рджреМрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ

      npm test

рд╕рднреА 19 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

@gumatias рдЕрдзрд┐рдХ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЖрдкрдХреЗ рдкрд░реАрдХреНрд╖рдг рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ @boneskull рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдЗрд╕ рд╕рдордп рд▓рдЧрднрдЧ 700+ рд╕реНрдкреЗрдХреНрд╕ рд╣реИрдВ рдФрд░ рд╡реЗ рд╕рднреА рдорд╛рд▓рд┐рдХрд╛рдирд╛ рдХреЛрдб рд╣реИрдВред рдореИрдВ рджреЛ рд╕рдорд╛рди рдирдореВрдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдХреЛрдИ рдорджрдж рдорд┐рд▓реЗрдЧреА?

рдиреАрдЪреЗ рд╡рд╣ рд╣реИ рдЬреЛ рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд░реНрддрдорд╛рди рдореЗрдВ package.json рдореЗрдВ рд╣реИред рдореЛрдЪрд╛ рдФрд░ рдХрд░реНрдо-рдореЛрдЪрд╛ рдЬреИрд╕реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдХреЛрдИ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓реАред

"devDependencies": {
  "karma": "~0.12.30",
  "karma-chai-jquery": "~1.0.0",
  "karma-chrome-launcher": "~0.1",
  "karma-coffee-preprocessor": "~0.1.3",
  "karma-firefox-launcher": "~0.1",
  "karma-jquery": "~0.1.0",
  "karma-mocha": "0.2.0",
  "karma-sinon-chai": "~0.1.1",
  "karma-spec-reporter": "~0.0.10",
  "mocha": "^2.2.5"
}

рдиреАрдЪреЗ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рдореЗрд░реЗ рдХреБрдЫ рдкреНрд░рдпрд╛рд╕ рд╣реИрдВ рдЬрд╣рд╛рдВ рдЯрд╛рдЗрдордЖрдЙрдЯ рд╣реЛрдирд╛ рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧрд╛ (рдмрд┐рдирд╛ рд╕рдлрд▓рддрд╛ рдХреЗ)ред

1. рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рджреЗ рдФрд░ async рдХреЙрд▓ рдХреЗ рднреАрддрд░ рдФрд░ рдмрд╛рдж рдореЗрдВ done() рдХреЙрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛

2. рдПрд╕рд┐рдВрдХ рдХреЙрд▓реНрд╕, рд╡рд╛рджреЛрдВ, рдПрдЪрдЯреАрдЯреАрдкреА рдмреИрдХрдПрдВрдб рдФрд░ рдЯрд╛рдЗрдордЖрдЙрдЯ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛рдУрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ (рдмрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ)

3. рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ package.json рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдЧрдпрд╛:

"devDependencies": {
  "karma": "~0.12.30",
  "karma-chai-jquery": "1.0.0",
  "karma-chrome-launcher": "0.2.2",
  "karma-coffee-preprocessor": "0.3.0",
  "karma-firefox-launcher": "~0.1",
  "karma-jquery": "0.1.0",
  "karma-mocha": "0.2.1",
  "karma-sinon-chai": "1.1.0",
  "karma-spec-reporter": "0.0.23",
  "mocha": "2.3.4"
}

4. рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдЪрд╢реНрдорд╛ рдХрд┐ рдХрд░реНрдо рд╕реНрдкреЗрдХ рд░рд┐рдкреЛрд░реНрдЯрд░ рдзреАрдорд╛ рд╣реЛрдиреЗ рдХреА рд╢рд┐рдХрд╛рдпрдд рдХрд░ рд░рд╣рд╛ рдерд╛:
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП Chrome 39.0.2171 (Mac OS X 10.11.2) SLOW 2.457 secs: My Spec Name "before each" hook for "should display " Add My Spec" when doing something"

рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЕрдиреНрдп рдирдП рд╕реНрдкреЗрдХреНрд╕ рдзреАрдореЗ рд╣реЛрдиреЗ рдХреА рд╢рд┐рдХрд╛рдпрдд рдХрд░ рд░рд╣реЗ рдереЗред рдпрд╣ рд╕рдВрднрд╡рддрдГ рдореВрд▓ рдХрд╛рд░рдг рдХреЛ рдЦреЛрдЬреЗ рдмрд┐рдирд╛ рдЪрд╢реНрдореЗ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдирд╛ред рдпрд╣ рдпрд╣рд╛рдБ рд╡рд░реНрдгрд┐рдд рдПрдХ рд╕реНрдореГрддрд┐ рд░рд┐рд╕рд╛рд╡ рдореБрджреНрджрд╛ рдирд┐рдХрд▓рд╛ https://github.com/mochajs/mocha/issues/2030

рдЯреЗрд╕реНрдЯ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЯрд╛рдЗрдордЖрдЙрдЯ рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЛ рдПрдХ рд╕рд╛рде рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕.рдЯрд╛рдЗрдордЖрдЙрдЯ (0) рдХрд╛ рдЙрдкрдпреЛрдЧ:

 it('should take less than 500ms', function(done){
  this.timeout(500);
  setTimeout(done, 300);
});

рд╕реНрд░реЛрдд: https://mochajs.org/#timeouts

рдпрджрд┐ рдЖрдк рдПрдореНрдмрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдПрдореНрдмрд░ рдореЗрдВ рдПрд╕рд┐рдВрдХ рдХреЙрд▓ рдХреЛ рд▓рдкреЗрдЯрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред => рдЗрд╕реЗ рдкрдврд╝реЗрдВ

рдореБрдЭреЗ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рдереА, рдФрд░ Ember.run => рдиреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ред

рд╕рд╛рде рд╣реА, рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рддреАрд░ рдХреЛ рдПрдХ рдореЛрдЯрд╛ рддреАрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, (рдореИрдВрдиреЗ => рдХреЗ рдмрдЬрд╛рдп => рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдЧрд▓рддреА рдХреА рд╣реИ) рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрдХреЛрдк рдХреЗ рдХрд╛рд░рдг рд╣реИ, рдпрджрд┐ рдЖрдк рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рддреЛ рдЗрд╕реЗ рдкрдврд╝реЗрдВред

рд╕реНрдЯреИрдХрдУрд╡рд░рдлреНрд▓реЛ рд▓рд┐рдВрдХ

рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ
рддреНрд░реБрдЯрд┐: 2000ms рдХрд╛ рд╕рдордпрдмрд╛рд╣реНрдп рдкрд╛рд░ рд╣реЛ рдЧрдпрд╛ред рдПрд╕рд┐рдВрдХреНрд╕ рдкрд░реАрдХреНрд╖рдг рдФрд░ рд╣реБрдХ рдХреЗ рд▓рд┐рдП, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ "рдХрд┐рдпрд╛ ()" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ; рдпрджрд┐ рдХреЛрдИ рд╡рд╛рджрд╛ рд╡рд╛рдкрд╕ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╡рд╣ рд╣рд▓ рд╣реЛ рдЧрдпрд╛ рд╣реИред
рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд░реЗрдВ?
рдореЗрд░рд╛ рдХреЛрдб рд╣реИ:

describe("Test Search", function() {
    it("Test Post Request", function(done) {
            chai.request(postReqURL)
            .post(postReqURL)
            .send(postReqObject)
            .end(function (err, res) {
                if (err) done(err);
                expect(res.status).to.equal(200);
                done()
            })
       });
});

рдирдорд╕реНрддреЗ @ vishnu2prasadh , рдХреНрдпрд╛ рдЖрдкрдиреЗ HTTP API рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рдмрдврд╝рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ? рдЖрдкрдХреЗ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ done рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд╣реА рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред

@ScottFreeCode рдзрдиреНрдпрд╡рд╛рджред рдЗрд╕.рдЯрд╛рдЗрдордЖрдЙрдЯ(10000) рдХреЛ рдЬреЛрдбрд╝рдХрд░ рддреНрд░реБрдЯрд┐ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛; рдХреЗ рднреАрддрд░

it("Test Post Request", function(done) {
     this.timeout(10000);
});

рдмрд╕ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рддрд╣рдд рдЬрд╕рди

       "scripts": {
            "start": "SET NODE_ENV=dev && node ./bin/www",
            "devstart": "SET NODE_ENV=dev && nodemon ./bin/www",
            "test": "mocha --timeout 10000"  <= increase this from 1000 to 10000
        },

рддрдм рдЖрдк рдмрд╕ рджреМрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ

      npm test

@elvinaze рдкрд╣рд▓реЗ рдмреНрд▓реЙрдХ рдореЗрдВ рдЯрд╛рдЗрдордЖрдЙрдЯ рд╕реАрдорд╛ рдмрдврд╝рд╛рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ?

рдмрд╕ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рддрд╣рдд рдЬрд╕рди

       "scripts": {
            "start": "SET NODE_ENV=dev && node ./bin/www",
            "devstart": "SET NODE_ENV=dev && nodemon ./bin/www",
            "test": "mocha --timeout 10000"  <= increase this from 1000 to 10000
        },

рддрдм рдЖрдк рдмрд╕ рджреМрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ

      npm test

рдЕрдм рддрдХ рдХрд╛ рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЙрддреНрддрд░ ЁЯСН

рдмрд╕ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рддрд╣рдд рдЬрд╕рди

       "scripts": {
            "start": "SET NODE_ENV=dev && node ./bin/www",
            "devstart": "SET NODE_ENV=dev && nodemon ./bin/www",
            "test": "mocha --timeout 10000"  <= increase this from 1000 to 10000
        },

рддрдм рдЖрдк рдмрд╕ рджреМрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ

      npm test

рдЕрднреА рднреА рдореЗрд░реЗ рд▓рд┐рдП рдХреНрдпреЛрдВред рддреНрд░реБрдЯрд┐: 10000ms рдХрд╛ рд╕рдордп рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ред рдПрд╕рд┐рдВрдХреНрд╕ рдкрд░реАрдХреНрд╖рдг рдФрд░ рд╣реБрдХ рдХреЗ рд▓рд┐рдП, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ "рдХрд┐рдпрд╛ ()" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ; рдпрджрд┐ рдХреЛрдИ рд╡рд╛рджрд╛ рд╡рд╛рдкрд╕ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╡рд╣ рд╣рд▓ рд╣реЛ рдЧрдпрд╛ рд╣реИ

рдпрд╣ ('рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП', рдлрд╝рдВрдХреНрд╢рди (рдХрд┐рдпрд╛ рдЧрдпрд╛) {
Any_asynchfunction ()ред рддрдм (рдлрд╝рдВрдХреНрд╢рди (рдЪреЗрдХ) {
рдкреНрд░рдпрддреНрди{
рдЬреЛрд░ рджреЗрдВред рд╕рдЦреНрдд рдПрдХреНрд╡рд╛рд▓ (рдЪреЗрдХ, рд╕рдЪ, 'рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реИ');
рдХрд┐рдпрд╛ рд╣реБрдЖ();
}рдкрдХрдбрд╝реЛ (рдЧрд▓рддреА){
рдХрд┐рдпрд╛ (рдЧрд▓рддреА);
}
});
});

рд╡рд░ any_asynchfunction = рд╕рдорд╛рд░реЛрд╣ (){
рд╡рд░ рдЖрд╕реНрдердЧрд┐рдд = q. defer ();
// Async рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ рдЬреИрд╕реЗ: API рдХреЙрд▓ (http://api.domain.com)
рдЖрд╕реНрдердЧрд┐рдд.рд╕рдорд╛рдзрд╛рди (рд░реЗрд╕);
рд╡рд╛рдкрд╕реА рдЖрд╕реНрдердЧрд┐рддредрд╡рд╛рджрд╛;
}

рдХреЙрд▓рдмреИрдХ рдФрд░ рд╡рд╛рджреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореЛрдЪрд╛ рдХреЗ рд╕рд╛рде рдПрд╕рд┐рдВрдХреНрд╕ рдХреЛрдб рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛

@ashish101184 , рдЕрд╕рдВрдмрдВрдзрд┐рдд рдмрдВрдж рдореБрджреНрджреЛрдВ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рди рдЬреЛрдбрд╝реЗрдВ!

рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЧрдИ рдереАред

it('should access user module', function() {
  return any_asynchfunction()
    .then(function(check) {
      assert.strictEqual(check, true, 'admin user should have access to user module');
    });
});

рдЯреЗрд╕реНрдЯ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЯрд╛рдЗрдордЖрдЙрдЯ рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЛ рдПрдХ рд╕рд╛рде рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕.рдЯрд╛рдЗрдордЖрдЙрдЯ (0) рдХрд╛ рдЙрдкрдпреЛрдЧ:

 it('should take less than 500ms', function(done){
  this.timeout(500);
  setTimeout(done, 300);
});

рд╕реНрд░реЛрдд: https://mochajs.org/#timeouts
рд╣реИрд▓реЛ рдиреЗ рдЖрдкрдХреЗ рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдмреЛрдЯрд┐рдпрдо рдбрд╛рдпрд░реЗрдХреНрдЯрд▓рд╛рдЗрди 3 рдлреЗрд╕рд┐рдВрдЧ рдПрд░рд░ '60000ms рдкрд╛рд░ рд╣реЛ рдЧрдпрд╛' рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рдореЗрдВ рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдХрд┐рд╕ рдлрд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП

рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд░рдиреЗ рдпрд╛ рдореЗрд░реА package.json рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╡реИрд╢реНрд╡рд┐рдХ рдЯрд╛рдЗрдордЖрдЙрдЯ рдмрдирд╛рдиреЗ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ред рдЕрдкрдиреЗ рдкрд░реАрдХреНрд╖рдг рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рддрд╣рдд рдореИрдВрдиреЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ mocha.opts ред рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдЪрд┐рдд рдЯрд╛рдЗрдордЖрдЙрдЯ рдЕрд╡рдзрд┐ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,

--timeout 10000

рдореБрдЭреЗ рд╡рд╣ рддреНрд░реБрдЯрд┐ рднреА рдорд┐рд▓ рд░рд╣реА рдереА, рдФрд░ рдХрдИ рдШрдВрдЯреЛрдВ рдХреЗ рд╢реЛрдз рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдореВрд▓ рдХрд╛рд░рдг рдорд┐рд▓рд╛ред

рдЗрд╕ рдкрд░реАрдХреНрд╖рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:

const delay = require('delay')

describe('Test', function() {
    it('should resolve', async function(done) {
      await delay(1000)
    })
})

рдЬрдм рдореИрдВ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:

Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.

рдЕрдм рдЗрд╕ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рдкрд░реАрдХреНрд╖рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рдЬрд╣рд╛рдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рддрд░реНрдХ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ :

const delay = require('delay')

describe('Test', function() {
    it('should resolve', async function() {
      await delay(1000)
    })
})

рдЬрдм рдореИрдВ рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдкрд╛рд╕ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдХрд┐рд╕реА рддрд░рд╣ async рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдХрд┐рдП рдЧрдП рддрд░реНрдХ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдкрд░реАрдХреНрд╖рдг рдХреЛ рддреЛрдбрд╝ рджреЗрддреА рд╣реИ, рднрд▓реЗ рд╣реА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ, рдФрд░ рднрд▓реЗ рд╣реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ () рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЕрдВрдд рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдмрд╕ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рддрд╣рдд рдЬрд╕рди

       "scripts": {
            "start": "SET NODE_ENV=dev && node ./bin/www",
            "devstart": "SET NODE_ENV=dev && nodemon ./bin/www",
            "test": "mocha --timeout 10000"  <= increase this from 1000 to 10000
        },

рддрдм рдЖрдк рдмрд╕ рджреМрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ

      npm test

"рдЯреЗрд╕реНрдЯ" "рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕" рдореЗрдВ --timeout 10000 рдЬреЛрдбрд╝рдирд╛, рдореЗрд░реЗ рд▓рд┐рдП рдЖрдХрд░реНрд╖рдг рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рд╢реБрдХреНрд░рд┐рдпрд╛!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

wzup picture wzup  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

EdvinOlofsson picture EdvinOlofsson  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

CADBOT picture CADBOT  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

robertherber picture robertherber  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

helloravi picture helloravi  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ