Модульные тесты должны проверять логику только одной функции и должны «имитировать» данные, которые используются в этой функции. Мне интересно, как бы мы соединили следующую функцию с "насмешкой" данных? или даже если это правильный путь. Сигнатура функции
public String doSomething(int firstId, int secondId, int count){
//this function looks in a table e.g. C which has foreign keys from table A, and B
//if firstId and secondId exist in db table C return "already-exists"
//if count < a_column_value_in_table_C return "not-allow"
// else return "success"
}
firstId
и secondId
являются внешними ключами из двух разных таблиц. Теперь, как нам пройти модульное тестирование этой функции с точки зрения:
1. как должен быть разработан модульный тест, чтобы в функции можно было протестировать 3 сценария
2. как мы подготовим данные для этого модульного теста, учитывая, что для него потребуются внешние ключи из двух разных таблиц.