茉莉花装置没有清理干净,测试不是独立的

时间:2014-02-06 01:56:00

标签: javascript jquery ruby-on-rails jasmine fixtures

我正在使用Jasmine对一些表列排序功能进行单元测试。出现了一个问题,我发现第一次点击后我的列的顺序错误(Z-A而不是A-Z)。我使用浏览器的调试器来检查html并确认该列实际上是错误排序的。作为独立性的测试,我在前一个块的末尾添加了一个额外的点击,令人惊讶的是这解决了这个问题。重新排序我的测试以避免对方的点击也有效。

这反驳了the assertion“灯具容器在测试之间自动清理”。任何人都可以验证这个错误或解释我误解的内容吗?

describe('gem bootstrap_sortable_rails', function() {
  var header;
  beforeEach(function() {
    setFixtures('<table class="sortable"><thead><tr><th data-sortkey="0">Name</th></tr></thead>' +
        '<tbody><tr><td data-value="Harrow Baptist Church"><a href="/organizations/1">Harrow Baptist Church</td></tr>' +
        '<tr><td data-value="Human Touch Worldwide"><a href="/organizations/1">Human Touch Worldwide</td></tr></tbody></table>');
    header = $('th');
  });
  describe('when clicking on the tableheader', function() {
    it('inserts an arrow after click', function() {
      header.click();
      expect(header.find('span')).toHaveClass('arrow');
      header.click();    // added to make the test below pass!
    });
    it('sorts A-Z then Z-A', function() {
      header.click();
      expect($('td').first()).toHaveText('Harrow Baptist Church');
      header.click();
      expect($('td').first()).toHaveText('Human Touch Worldwide')
    });
  });
});

ruby​​ 1.9.3, rails 3.2.14, jasmine-jquery-rails 1.5.9

我刚刚升级到jasmine 2.0和jasmine-jquery-rails 2.0.2,没有区别。

0 个答案:

没有答案