Uma das características da ferramenta ______ são os controles de gravação que são importantes no momento da gravação dos scripts, ajudando a economizar tempo no projeto, bem como o extrator de expressão regular que auxilia a coleta de dados dos resultados retornados, podendo assim realizar validações durante o teste.
function vote(questaoId, value) {
window.location.href = "/accounts/login/?next=/questao/429/";
return;
fetch(`/vote/questao/${questaoId}/`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-CSRFToken': 'NHLKbn2HsPjYrKEFadjcvst8YFhxcGbDZwMLpaib1Sid4aYdXDKMgaegfc8Oe2Li'
},
body: JSON.stringify({ value: value })
})
.then(response => response.json())
.then(data => {
if (data.success) {
document.getElementById(`score-${questaoId}`).textContent = data.score;
const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`);
const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`);
upBtn.classList.remove('active-up');
downBtn.classList.remove('active-down');
if (data.user_vote === 1) upBtn.classList.add('active-up');
if (data.user_vote === -1) downBtn.classList.add('active-down');
}
});
}