title: TypeError: Cannot read property 'apply' of undefined, using javascript apply in tests?
body: <p>Is there limitations with using apply (<a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply" rel="nofollow">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply</a>) in qunit tests?</p>
  
  <pre><code>import {
    moduleForModel,
    test
  } from 'ember-qunit';
  
  moduleForModel('enterprise', 'Enterprise Model', {});
  
  test('salesTaxPercent gets converted from human readable decimal to float properly using convertPercentage helper method', function(assert) {
    var store = this.store();
    var model = this.subject({salesTaxPercent: 2.50});
    assert.equal(model.get('salesTax'), 0.025, 'salesTax computed property is 0.025');
  });
  
  import DS from 'ember-data';
  
  export default DS.Model.extend({
     salesTax: DS.attr('number', {defaultValue: 0}),
     salesTaxPercent: function(key, value, previousValue) {
          return this.convertPercentage.apply(this, arguments);
      }.property('salesTax')
  });
  
  DS.Model.reopen({
   convertPercentage: function(key, value, previousValue) {
          var percentKey = arguments[0].replace('Percent','');
          if(arguments.length &gt; 1) {
              this.set(percentKey, accounting.unformat((arguments[1]/100)));
  
          return Ember.isEmpty(this.get(percentKey)) ? null : accounting.unformat((this.get(percentKey) * 100).toFixed(2));
   }
  });
  </code></pre>
  
  <p>Also the stacktrace looks like this:</p>
  
  <pre><code>TypeError: Cannot read property 'apply' of undefined
      at null.&lt;anonymous&gt; (http://localhost:4200/provider/assets/inbox-dashboard.js:7099:42)
      at Descriptor.computedPropertySet [as _set] (http://localhost:4200/provider/assets/vendor.js:27308:20)
      at Descriptor.computedPropertySetWithSuspend [as set] (http://localhost:4200/provider/assets/vendor.js:27270:14)
      at set (http://localhost:4200/provider/assets/vendor.js:32804:14)
      at http://localhost:4200/provider/assets/vendor.js:33575:11
      at tryFinally (http://localhost:4200/provider/assets/vendor.js:34504:28)
      at changeProperties (http://localhost:4200/provider/assets/vendor.js:32529:7)
      at setProperties (http://localhost:4200/provider/assets/vendor.js:33568:7)
      at __exports__.default.Mixin.create.setProperties (http://localhost:4200/provider/assets/vendor.js:48068:16)
      at Ember.Object.extend.createRecord (http://localhost:4200/provider/assets/vendor.js:119923:16)TypeError: Cannot read property 'apply' of undefined
      at null.&lt;anonymous&gt; (http://localhost:4200/provider/assets/inbox-dashboard.js:7099:42)
      at Descriptor.computedPropertySet [as _set] (http://localhost:4200/provider/assets/vendor.js:27308:20)
      at Descriptor.computedPropertySetWithSuspend [as set] (http://localhost:4200/provider/assets/vendor.js:27270:14)
      at set (http://localhost:4200/provider/assets/vendor.js:32804:14)
      at http://localhost:4200/provider/assets/vendor.js:33575:11
      at tryFinally (http://localhost:4200/provider/assets/vendor.js:34504:28)
      at changeProperties (http://localhost:4200/provider/assets/vendor.js:32529:7)
      at setProperties (http://localhost:4200/provider/assets/vendor.js:33568:7)
      at __exports__.default.Mixin.create.setProperties (http://localhost:4200/provider/assets/vendor.js:48068:16)
      at Ember.Object.extend.createRecord (http://localhost:4200/provider/assets/vendor.js:119923:16)
  </code></pre>