小编zsh*_*hnr的帖子

如何在PhantomJS中测试String.prototype.includes

我有一个ember-cli 0.2.7使用Ember.js 1.12.0应用程序与一段代码看起来像:

controllers/cart.js

import Ember from 'ember';

export default Ember.Controller.extend({

    footwearInCart: Ember.computed('model.@each.category', function() {
        return this.get('model').any(product => product.get('category').includes('Footwear'));
    })
});
Run Code Online (Sandbox Code Playgroud)

它遍历模型中的所有对象,如果其类别属性中包含"鞋类",则返回true.

我试图像这样测试它:

tests/unit/controllers/cart-test.js

import { moduleFor, test } from 'ember-qunit';
import Ember from 'ember';

var products = [Ember.Object.create({name: 'shoe', category: 'Footwear', subTotal: 10}), Ember.Object.create({name: 'shirt', subTotal: 20})];

var model = Ember.ArrayProxy.create({
  content: Ember.A(products)
});

moduleFor('controller:cart', {
  beforeEach() {
    this.controller = this.subject();
  }
});

test('footwearInCart property works', function(assert) {
  this.controller.set('model', model);

  assert.equal(this.controller.get('footwearInCart'), true, 'The footwearInCart function …
Run Code Online (Sandbox Code Playgroud)

javascript phantomjs ember.js ecmascript-6 ember-cli

10
推荐指数
2
解决办法
4160
查看次数

Ember控制器上的单元测试计算属性

来自我的controllers/cart.js的代码:

export default Ember.Controller.extend({
  cartTotal: Ember.computed('model.@each.subTotal', function() {
    return this.model.reduce(function(subTotal, product) {
      var total = subTotal + product.get('subTotal');
      return total;
    }, 0);
  })
)};
Run Code Online (Sandbox Code Playgroud)

此计算属性循环遍历模型中的所有元素,添加subTotal属性的所有值,返回a cart total.

购物车,test.js

import { moduleFor, test } from 'ember-qunit';
import Ember from 'ember';

moduleFor('controller:cart', {
  // Specify the other units that are required for this test.
  // needs: ['controller:foo']
});

test('it exists', function(assert) {
  var controller = this.subject();
  assert.ok(controller);
});

test('cartTotal function exists', function(assert) {
  var controller = this.subject(); …
Run Code Online (Sandbox Code Playgroud)

unit-testing qunit ember.js ember-cli ember-qunit

2
推荐指数
1
解决办法
2152
查看次数