Тестирование метода который ничего не возвращает

Всё про тестирование в Yii 2.0
Ответить
ilya1991
Сообщения: 3
Зарегистрирован: 2018.03.30, 14:36

Тестирование метода который ничего не возвращает

Сообщение ilya1991 » 2018.08.04, 10:10

Здравствуйте,
Подскажите как по феншую( грамотно, правильно) протестировать метод notifyUsers в классе EmailNotificationToUsers?
Понятно что отдельно будет протестирован метод getEmail() у класса Users (в этом проблем нет). А вот как тестировать методы которые ничего не возвращают, непонятно.

Код: Выделить всё

class EmailNotificationToUsers{

public static function notifyUsers{
	$users = Users::getEmail();

	self::sendMail($users);
}

private static function sendEmail($users){
	/*  проходит циклом по массиву $users достает email и отправляет сообщение*/
}


Можно конечно сделать отдельный публичный метод getUsers в этом классе, который будет возвращать массив Users и этот метод уже можно протестировать, но по правильному метод getUsers лучше делать private и снова получаем проблему так как в таком случае метод будет недоступен для тестирования (private)

Код: Выделить всё

class EmailNotificationToUsers{

public static function notifyUsers{
	$users = self::getUsers();

	self::sendMail($users);
}

public static function getUsers{
	return  $users = Users::getEmail();
}

private static function sendEmail($users){
	/*  проходит циклом по массиву $users достает email и отправляет сообщение*/
}



Ответить