Как появляется такой странный формат с плавающей запятой и точкой? - PullRequest
0 голосов
/ 04 августа 2020

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

Проблемная строка:

$float_value = (float)$string_value;

Как это выглядит, когда выполняется только один тестовый класс (нормальный случай):

enter image description here

How does it looks when problem appears:

введите описание изображения здесь

И тогда у меня возникла проблема с вставкой этого значения в базу данных, потому что база данных не согласна с тем, что значение - numeri c.

Что означает, что "представлены запятая и точка both "?

Я попытался найти информацию о запятой как разделителе дробной части и появляющейся точке, но не смог.

Есть ли у нас какие-либо настройки для такого поведения? Потому что он может быть воспроизведен только в том случае, если другие тесты были выполнены ранее.

1 Ответ

0 голосов
/ 06 августа 2020

Итак, я нашел проблему и решил ее. Причина заключалась в том, что в одном из протестированных методов была вызвана функция setlocale (), которая устанавливает десятичную точку в запятую.

...