Жасмин: Как проверить функцию, которая создает элемент и манипулирует DOM - PullRequest
0 голосов
/ 11 октября 2018

У меня есть функция, которая создает таблицу, как показано ниже:

        function generateTableHTML(data, model) {

        //creating table and first header row
        let table = document.createElement('table'),
            trHeader = document.createElement('tr'),
            th1 = document.createElement('th'),
            clnNode;

        tableModel.columns.forEach(function (column) {
            clnNode = th1.cloneNode(true);
            clnNode.innerText = column.title;
            trHeader.appendChild(clnNode);
        })
        table.appendChild(trHeader);

        //creating all the other rows
        let tr = document.createElement('tr'),
            td1 = document.createElement('td'),
            clnRow, clnData;


        //Setting the row and column values code    

        tableData.forEach(function (row) {
            clnRow = tr.cloneNode(true);
            tableModel.columns.forEach(function (column) {
                clnData = td1.cloneNode(true);

                //Certain Logic
            })
        })

        return table.outerHTML;
    }

Как лучше всего протестировать эту функцию?Я имею в виду, можно ли проверить clnData с помощью jasmine. Эта функция возвращает html, как показано ниже, после передачи имитирующих данных:

<table><tr><th>Name</th><th>Designation</th></tr><tr><td></td><td>SE</td></tr><tr><td></td><td>SSE</td></tr></table>

Если не clnData, какой будет лучший способ проверить значение Обозначения как SEи SSE убеждается, что даже если содержание фиктивных данных увеличится, тест на SE и SSE должен пройти?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...