Skip to content

Instantly share code, notes, and snippets.

@rwjblue
Last active January 23, 2022 02:14
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rwjblue/6894793 to your computer and use it in GitHub Desktop.
Save rwjblue/6894793 to your computer and use it in GitHub Desktop.
Rails Inflector Test
Output:
'campu' != 'campus' -> regular singularization is preserved
def equal(expected, actual, message = "didn't match")
puts "'#{expected}' != '#{actual}' -> #{message}" unless expected == actual
end
inflector = ActiveSupport::Inflector.inflections
inflector.singular(/s$/, '');
inflector.plural(/$/, 's');
equal('campuses'.singularize, 'campuse', 'regular singularization rule was applied');
equal('campus'.pluralize, 'campuss', 'regular pluralization rule was applied');
inflector.irregular('campus', 'campuses');
equal('campuses'.singularize, 'campus', 'irregular singularization rule was applied');
equal('campus'.pluralize, 'campuses', 'irregular pluralization rule was applied');
equal('campus'.singularize, 'campus', 'regular singularization is preserved');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment