title: Promise won't resolve in unit test
body: <p>Promise just won't resolve in unit test.</p>
  
  <pre><code>it('should break', function(done){
       const promise =  Promise.resolve([1, 2, 3, 4 , 5]); 
       promise.then(function(){
           expect(true).to.be.false;
           done();
       });
  });
  </code></pre>
  
  <p>I have also tried this. (This is actually works in my seperate new sample project i created but this is not working in my real project so this is weird</p>
  
  <p>import { expect } from 'chai';</p>
  
  <p>describe('Hello function', function () {</p>
  
  <pre><code>it('should return hello world', function () {
      const promise = Promise.resolve(1);
      return promise.then(function () {
          expect(true).to.be.false;
      });
  });
  </code></pre>
  
  <p>});</p>
  
  <p>Background
      "karma-mocha": "^1.3.0",
      "karma-webpack": "^2.0.1",
      "karma-chai": "^0.1.0",
      "karma-chrome-launcher": "^2.2.0",
      "typescript": "~2.3.4",
      "tslint-loader": "^3.3.0",</p>
  
  <p>In karma.config.js</p>
  
  <p>frameworks: ['mocha', 'chai'],
   browsers: ['ChromeHeadless'],</p>
  
  <p>Error message i got</p>
  
  <pre><code>✖ should break
    HeadlessChrome 0.0.0 (Mac OS X 10.12.6)
  Error: Timeout of 9999ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
  </code></pre>