Я просто играю с базовым рубиновым приложением, которое изменяет атрибут направления html при нажатии кнопки. Он отлично работает на стороне JQuery, но в моем тестовом примере работает, даже когда срабатывает .click(). Вот мои файлы.
display.html.erb
<p>
<%= button_tag 'Convert', id: 'test', remote: 'true' %>
</p>
Jquery: конвертация.js
$(document).ready(function(){
$('#test').on('click', setHtmlStyle);
});
var setHtmlStyle = function(){
var $style = $('html');
$style.attr('dir', $style.attr('dir') === 'rtl' ? 'ltr' : 'rtl');
};
Спецификация: convert_spec.js
describe('#test', function (){
beforeEach(function(){
loadFixtures('conversion.html');
});
describe('Clicking test button', function(){
it('should have an attribute', function(){
$('#test').click();
expect($('html').attr('dir')).toBe('rtl');
});
});
Крепление: convert.html
<html>
<input type='button' name='Convert' id='test'>
</html>
Вот сообщение об ошибке, когда я запускаю свои тесты:
Failure/Error: Expected 'ltr' to be 'rtl'.
Любая помощь или предложения будут по-настоящему оценены. Спасибо.
id='rtl'
должен бытьid='test'
правильно? - person Hacketo   schedule 25.05.2015async expect
сделал бы. Не могли бы вы уточнить? - person Teja   schedule 25.05.2015