Почему новый скрипт javascript делает тесты Capybara неудачными? - PullRequest
0 голосов
/ 14 февраля 2019

Я написал новый JS-скрипт для отправки HTTP-запросов на определенные события кликов.В настоящее время работает со всеми страницами в моем приложении rails.(Не идеально, но я подумал, что это пока не вызовет серьезных проблем. Однако его присутствие делает огромное количество тестов на капибару неудачным. Я не знаю почему.

function onCheckboxClick() {
  const url = $(this).attr("data-action")
  const data = {
    method: "PATCH",
    body: JSON.stringify({ confidential: this.checked }),
    headers: {
      'X-CSRF-Token': Rails.csrfToken(),
      'Content-Type': 'application/json'
    }
  }
  fetch(url, data)
    .then(response => { return response.json() })
    .catch(error => console.log(error))
}

$(document).on('turbolinks:load', () => {
  const checkboxes = document.querySelectorAll("#invoice_confidential")
  checkboxes.forEach((box) => {
    box.addEventListener("click", onCheckboxClick)
  })
})

1 Ответ

0 голосов
/ 14 февраля 2019

Хорошо, вы используете синтаксис ES6. Я не знаю, какой браузер вы используете для своих тестов, но это может быть проблемой, возможно, его нужно скомпилировать в ES5.

Но вы не предоставилидостаточно информации.Какую версию Rails вы используете?Вы используете Webpacker?У вас есть настройка Babel?Может быть, вы можете поделиться некоторыми настройками.

...