Как написать модульный тест для утверждения значения элемента jQuery - PullRequest
2 голосов
/ 15 февраля 2010

Я использую jQuery 1.4.1, а вот простой код.

buildCol1: function() {
  var col = $('<select />', {className: 'col1' }).append($('<option />'));
  return $('<td />').append(col);
},

Я использую Qunit. В этом случае вызов метода возвращает элемент jquery. Поскольку я пишу тест, у меня должно быть что-то вроде

s = "<td><select class='col1'><option></option></select></td>"

Я не уверен, как получить полностью раскрытое текстовое значение из элемента jquery. Я уверен, что смогу получить это, полностью разобравшись со всеми детьми. Но я надеюсь, что есть более простой способ для юнит-тестирования этого метода.

Обновление:

После того, как я опубликовал вопрос, у меня возникла мысль, что по возвращенному элементу я могу проверить имя класса и правильное количество детей. По сути это будет похоже на проверку возвращенного значения td на правильные значения.

1 Ответ

3 голосов
/ 15 февраля 2010

Итак, вы хотите получить простой HTML-код для выбора jQuery? Решение состоит в том, чтобы поместить его в содержащий элемент и получить внутренний HTML-код этого элемента:

var $myEl = $('<select />', {className: 'col1' }).append($('<option />'));
var src = $("<div></div>").append($myEl).html();
...