diff options
Diffstat (limited to 'activesupport/test/core_ext/string_ext_test.rb')
-rw-r--r-- | activesupport/test/core_ext/string_ext_test.rb | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/activesupport/test/core_ext/string_ext_test.rb b/activesupport/test/core_ext/string_ext_test.rb new file mode 100644 index 0000000000..317dbcf711 --- /dev/null +++ b/activesupport/test/core_ext/string_ext_test.rb @@ -0,0 +1,64 @@ +require 'test/unit' +require File.dirname(__FILE__) + '/../../lib/core_ext/string' +require File.dirname(__FILE__) + '/../../lib/misc' + +silence_warnings do + require File.dirname(__FILE__) + '/../inflector_test' +end + +class StringInflectionsTest < Test::Unit::TestCase + def test_pluralize + InflectorTest::SingularToPlural.each do |singular, plural| + assert_equal(plural, singular.pluralize) + end + + assert_equal("plurals", "plurals".pluralize) + end + + def test_singularize + InflectorTest::SingularToPlural.each do |singular, plural| + assert_equal(singular, plural.singularize) + end + end + + def test_camelize + InflectorTest::CamelToUnderscore.each do |camel, underscore| + assert_equal(camel, underscore.camelize) + end + end + + def test_underscore + InflectorTest::CamelToUnderscore.each do |camel, underscore| + assert_equal(underscore, camel.underscore) + end + + assert_equal "html_tidy", "HTMLTidy".underscore + assert_equal "html_tidy_generator", "HTMLTidyGenerator".underscore + end + + def test_demodulize + assert_equal "Account", Inflector.demodulize("MyApplication::Billing::Account") + end + + def test_foreign_key + InflectorTest::ClassNameToForeignKeyWithUnderscore.each do |klass, foreign_key| + assert_equal(foreign_key, klass.foreign_key) + end + + InflectorTest::ClassNameToForeignKeyWithoutUnderscore.each do |klass, foreign_key| + assert_equal(foreign_key, klass.foreign_key(false)) + end + end + + def test_tableize + InflectorTest::ClassNameToTableName.each do |class_name, table_name| + assert_equal(table_name, class_name.tableize) + end + end + + def test_classify + InflectorTest::ClassNameToTableName.each do |class_name, table_name| + assert_equal(class_name, table_name.classify) + end + end +end |