Проблема корректности объявления параметра у объекта Drill
Этот тест проверяет корректность обновления параметров (power, voltage, rpm) у объекта Drill. Используется метод UpdateParameters(...), и после этого сверяются полученные значения через геттеры. void testPowerUpdate() { std::cout << "Testing power update... ";
Drill drill("Test Drill", 800, 220, 3000);
drill.UpdateParameters(700, 220, 3000);
assert(drill.GetBasePower() == 700);
assert(drill.GetVoltage() == 220);
assert(drill.GetRPM() == 3000);
std::cout << "Passed\n";
} Изначально при запуске теста возникала ошибка: поле _power не обновлялось должным образом. Это происходило из-за того, что в базовом классе AbstractElectricDevice переменная _power была объявлена как private, из-за чего производный класс Drill не имел к ней доступа при вызове UpdateParameters(...). Кроме того, метод GetBasePower() отсутствовал в ранней реализации, что делало невозможным проверить обновлённую мощность напрямую.