in reply to Can I tell if DBI's quote() was used?

Could you... if only for debugging, override quote to return an object instead of just a string, which stringifies to the originally quoted string, and for which you test in either use in code that uses placeholders, depends on quoted strings, or gets quoted again?

Perhaps you could use pre and post hooks to modify DBI's quote's behaviour: a pre hook to check the parameters, a post hook to wrap the string into an object. You ought to be able to attach the hooks to the code ref returned by $dbh->can('quote').

This way you will not be able to detect (hopefully) quoted strings that get interpolated into SQL, because you'll immediately loose the object and get back a flat string. But it may be a starting place for a better test suite.