rails/rails — pull request #9882 by johanlindblad (2013-03-23 10:32:39+00:00)
Title: Match acronyms greedily in the inflector.

In its current state, the inflector handles acronyms non-intuitively if
there are acronyms defined that contain other acronyms.

Examples:
* If you define HTM and HTML as acronyms, 'HTMLController'.underscore produces
different results depending on the order in which the two acronyms are
defined - in some cases the result is 'htm_l_controller'.
* 'DNSController'.underscore will return 'd_ns_controller' if DNS and NS
are defined as an acronym, regardless of the order they are defined.

This commit includes tests for both cases and two changes to the
inflector code to handle them. It changes the behaviour so that the
longest suitable acronym is always used.