Size: a a a

2020 August 01

SM

Sergey Milimko in PHP
Видимо да
источник

VS

Vlad Sobenko in PHP
Альберт Степанцев
Берете codeception
Выставляете начальное состояние БД
делаете assertSame ( ожидаемый результат, фактический результат вызова функции)
Это не юнит уже
источник

SM

Sergey Milimko in PHP
В сферическом вакууме
источник

AC

A C in PHP
Альберт Степанцев
Что такое «процедуры»?
для меня это нечто делающее, что-то вне своих рамок, к примеру чтение из бд, удаление файла и т.д.
источник

АС

Альберт Степанцев... in PHP
Vlad Sobenko
Это не юнит уже
с хрена ли?
источник

AC

A C in PHP
Альберт Степанцев
Берете codeception
Выставляете начальное состояние БД
делаете assertSame ( ожидаемый результат, фактический результат вызова функции)
дак это интеграционный, нет?
источник

АС

Альберт Степанцев... in PHP
если у вас иммутабельная функция, без разницы - где она, в php или в базе
источник

SM

Sergey Milimko in PHP
Это юнит. Он маленький объем функционала тестирует
источник

АС

Альберт Степанцев... in PHP
A C
дак это интеграционный, нет?
нет
источник

SM

Sergey Milimko in PHP
Но это не изоляционный тест
источник

АС

Альберт Степанцев... in PHP
я тестирую одну функцию
подаю на вход аргументы, сравниваю ожидаемый результат с фактически возвращаемым
источник

АС

Альберт Степанцев... in PHP
Sergey Milimko
Но это не изоляционный тест
повторю - с хрена ли?
источник

VL

Vlad Lesoplyasov in PHP
Добрый вечер!

Столкнулся с проектом, у которого в composer.lock множество библиотек имеют мин требование php 7+, на хостинге стоит php 5.5.9 и проект работает. (Соответственно локально зависимости не хотели ставиться на php 5.5.9).

Означает ли это, что зависимости собирались в окружении с php версией 7+? Если да, то насколько безопасно будет обновить версию php до 7+ на хостинге?

Нормально ли продолжить старую практику, собирать локально на 7+ и отправлять на хостинг? Есть подозрения что нет.
источник

VS

Vlad Sobenko in PHP
Вызываешь процесс php(codeception). Где то поднята база. Процесс коннектится к базе. Ты изменяешь состояние базы. Потом спрашиваешь новое.
источник

АС

Альберт Степанцев... in PHP
Vlad Sobenko
Вызываешь процесс php(codeception). Где то поднята база. Процесс коннектится к базе. Ты изменяешь состояние базы. Потом спрашиваешь новое.
кто вам набредил про "изменяю состояние"?
источник

DE

Dmitry Eliseev in PHP
Sergey Milimko
Это как? Вот создали сущность, записали в базу и в кэш на час. Через час кэш протух. Ещё через 5 минут пришёл запрос на восстановление состояния сущности.
Сущность при создании сгенерировала событие EntityCreated. По этому событию слушатель собирает JSON и помещает навсегда в ElasticSearch.

Через 5 минут сущность изменилась и сгенерировала EmailChanged с новым email. Слушатель его поймал и обновил email в её строке в ElasticSearch.

В итоге имеем:

1. Оригинальную нормализованную реляционную БД для сущностей с ORM

2. Оптимизированную денормализованную БД для вывода на фронтенде со скоростью, которая реляционным БД не снилась
источник

АС

Альберт Степанцев... in PHP
где это в моих словах есть?
источник

АС

Альберт Степанцев... in PHP
Vlad Sobenko
Вызываешь процесс php(codeception). Где то поднята база. Процесс коннектится к базе. Ты изменяешь состояние базы. Потом спрашиваешь новое.
ты - а тебя затыкали коты ))
источник

АС

Альберт Степанцев... in PHP
Vlad Sobenko
Вызываешь процесс php(codeception). Где то поднята база. Процесс коннектится к базе. Ты изменяешь состояние базы. Потом спрашиваешь новое.
не "где-то поднята", а тест предварительно создал себе тестовое окружение
источник

VS

Vlad Sobenko in PHP
Альберт Степанцев
кто вам набредил про "изменяю состояние"?
Даже без. Тест php зависит от внешней базы. Базы упала - тест не прошел. Не юнит
источник