对_observer进行测试 - 聚合物单元测试

时间:2016-03-23 14:22:46

标签: polymer polymer-1.0

我有一个元素Subject Sex Age .... .... ... .. Var1 Var2 Var3 1 M 38 88 89 99 1 M 38 ..... .... .. . . NaN NaN NaN 2 F 34 ..... .... .. ... 34 34 34 ,在<my-elem1>函数中有一个属性elements和一个_observer函数。

&#13;
&#13;
attached
&#13;
&#13;
&#13;

其中attached: function () { var self = this; this._observer = Polymer.dom(this).observeNodes( function(info) { nodesToAdd = info.addedNodes.filter(function(node){ return node.nodeName == 'MY-ELEM2'; // to get rig of #text nodes }) nodesToAdd.forEach(function(elem) { self.push('elements', elem.asObject()); }); }); }定义为:

&#13;
&#13;
elements
&#13;
&#13;
&#13;

现在我正在尝试编写测试来检查这个_observer是否确实推送了 elements: { type: Array, notify: true, value: function() { return []; } },数组中的elem。我的测试文件类似于以下内容:

&#13;
&#13;
elements
&#13;
&#13;
&#13;

现在这个测试没有通过。 myEl.points.length的值为0.我想知道为什么_observer没有被调用。即使它不允许我调用myEl._observer,也会给出一些错误。

我该如何编写测试?另外,我如何测试<test-fixture id="my-elem1-fixture"> <template> <my-elem1> <my-elem2 foo="1"></my-elem2> <my-elem2 foo="2"></my-elem2> <my-elem2 foo="3"></my-elem2> <my-elem2 foo="4"></my-elem2> </my-elem1> </template> </test-fixture> <script> suite('my-elem', function() { var myEl; setup(function() { myEl = fixture('my-elem1-fixture'); }); test('checks the "elements" array', function() { assert(myEl.elements.length, 4); }); }); </script>数组的长度最初为0?

0 个答案:

没有答案