Как правильно вызвать Assert :: ExpectException?

Изменен html-код:

 <form method="post" action="/saveRoles">
        <% for (var i = 1; i < rows.length; i++) { %>
        <div class="form-group">
            <label for="changingRole"> <%= rows[i].email %></label>
            <select name="role">
                <% if (rows[i].role == 'admin') { %>
                <option selected value='admin'>admin</option>
                <option value="user">user</option>
                <% } else { %>
                <option selected value="user">user</option>
                <option value="admin">admin</option>
                <% } %>
            </select>
        </div>
        <% } %>
        <button type="submit" class="btn btn-primary">Submit</button>
    </form>

, поэтому я могу теперь легко извлекать роли и работать с ними далее

router.post('/saveRoles', urlencodedParser, function(req, res, next){
    var roles = req.body;

    database.connection.query("select email, role from users", function(err, rows, fields){
        if(err) console.log(err);
        for(var i = 1; i < rows.length; i++){
            console.log(rows[i].role);
            console.log(roles.role[i-1]);
            if(rows[i].role != roles.role[i-1]){
                database.connection.query("update users set role = ? where email = ?", [roles.role[i-1], rows[i].email], 
                    function(err, res){
                        if(err) console.log(err);
                        console.log("success");
                    });
            } else {
                console.log("not changed");
            }
        }
    });
    res.redirect('/adminOffice');
});
1
задан Gino Pensuni 19 January 2019 в 14:35
поделиться

1 ответ

Вам нужно обернуть тестируемый код в лямбда-выражение, которое будет вызываться функцией Assert::ExpectException.

void Foo()
{
    throw std::invalid_argument("test");
}

TEST_METHOD(Foo_ThrowsException)
{
    auto func = [] { Foo(); };
    Assert::ExpectException<std::invalid_argument>(func);
}
0
ответ дан Chris Olsen 19 January 2019 в 14:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: