aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/core_ext/regexp_ext_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activesupport/test/core_ext/regexp_ext_test.rb')
-rw-r--r--activesupport/test/core_ext/regexp_ext_test.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/activesupport/test/core_ext/regexp_ext_test.rb b/activesupport/test/core_ext/regexp_ext_test.rb
new file mode 100644
index 0000000000..f71099856d
--- /dev/null
+++ b/activesupport/test/core_ext/regexp_ext_test.rb
@@ -0,0 +1,26 @@
+class RegexpExtAccessTests < Test::Unit::TestCase
+ def test_number_of_captures
+ assert_equal 0, //.number_of_captures
+ assert_equal 1, /.(.)./.number_of_captures
+ assert_equal 2, /.(.).(?:.).(.)/.number_of_captures
+ assert_equal 3, /.((.).(?:.).(.))/.number_of_captures
+ end
+
+ def test_multiline
+ assert //m.multiline?
+ assert ! //.multiline?
+ assert ! /(?m:)/.multiline?
+ end
+
+ def test_optionalize
+ assert "a?", Regexp.optionalize("a")
+ assert "(?:foo)?", Regexp.optionalize("foo")
+ assert "", Regexp.optionalize("")
+ end
+
+ def test_unoptionalize
+ assert "a", Regexp.unoptionalize("a?")
+ assert "foo", Regexp.unoptionalize("(?:foo)")
+ assert "", Regexp.unoptionalize("")
+ end
+end \ No newline at end of file