Add more tests

As it is 3/5 of that method is building the error message. If it didn't use `locals` it would be 9/11. At that point I think the actual work the method is doing is obscured.