Last Updated: 2024-03-02
I modified the
findByUuid scope (something that generates SQL) on a website to do
eager loading (load associated records to avoid N+1 issues).
When I tested it against my (single) seed record, the correct
showed up in the browser, the one matching the UUID in my URL:
However, later a colleague played with the code and noticed that no matter what
UUID he gave it, the same
$advisor page showed.
Behind the scenes, it turned out that I had misunderstood the eager-loading API and was always returning the first entity in the database
You don't get much info testing finder logic against a single record. For that you need to test against two different ones and ensure both display correctly.