Pindah ke sini dari https://github.com/sebastienbergmann/phpunit/pull/3335#issuecomment -428570649.
Juga menggantikan #3180.
Menghapus parameter $maxDepth
dari assertEquals()
dll. akan merusak semua pengujian yang menggunakan assertEquals()
dengan parameter opsional yang mengikuti $maxDepth
.
Satu-satunya cara untuk membersihkan assertEquals()
yang {semoga|mungkin} menyebabkan lebih sedikit masalah adalah dengan membersihkan lebih drastis dan tidak hanya menghapus $maxDepth
tetapi juga semua parameter opsional yang muncul setelahnya. Ini juga tidak terlalu menarik.
Semua parameter opsional ini seharusnya tidak pernah ditambahkan, mereka membuat API yang mengerikan. Namun, saya tidak yakin, apakah manfaat membersihkan assertEquals()
dll. dengan menghapus parameter opsional ini dan menambahkan metode penegasan yang lebih spesifik sebagai gantinya melebihi rasa sakit karena melanggar kompatibilitas.
Satu-satunya parameter yang saya gunakan kadang-kadang adalah kasus abaikan. Tidak pernah menggunakan yang lain.
Bermigrasi ke pernyataan khusus untuk itu tampaknya merupakan jalur peningkatan yang masuk akal bagi saya.
Digantikan oleh #3341.
Komentar yang paling membantu
Menghapus parameter
$maxDepth
dariassertEquals()
dll. akan merusak semua pengujian yang menggunakanassertEquals()
dengan parameter opsional yang mengikuti$maxDepth
.Satu-satunya cara untuk membersihkan
assertEquals()
yang {semoga|mungkin} menyebabkan lebih sedikit masalah adalah dengan membersihkan lebih drastis dan tidak hanya menghapus$maxDepth
tetapi juga semua parameter opsional yang muncul setelahnya. Ini juga tidak terlalu menarik.Semua parameter opsional ini seharusnya tidak pernah ditambahkan, mereka membuat API yang mengerikan. Namun, saya tidak yakin, apakah manfaat membersihkan
assertEquals()
dll. dengan menghapus parameter opsional ini dan menambahkan metode penegasan yang lebih spesifik sebagai gantinya melebihi rasa sakit karena melanggar kompatibilitas.