test/matchdata/tc_matchdata.rb in facets-0.6.3 vs test/matchdata/tc_matchdata.rb in facets-0.7.0
- old
+ new
@@ -1,10 +1,11 @@
require 'test/unit'
require 'facet/matchdata/match'
-require 'facet/matchdata/match_from'
+require 'facet/matchdata/matchtree'
+require 'facet/matchdata/matchset'
class TC_MatchData < Test::Unit::TestCase
# match
@@ -12,36 +13,50 @@
def test_match
md = /X(a)(b)(c)X/.match("YXabcXY")
assert_equal( "XabcX", md.match )
end
- # match_from
-
- def test_pre_match_from
- md = /X(a)(b)(c)X/.match("YXabcXY")
- assert_equal( md.pre_match, md.pre_match_from )
- assert_equal( md.pre_match, md.pre_match_from(0) )
- assert_equal( "Y", md.pre_match_from )
- assert_equal( "Y", md.pre_match_from(0) )
- assert_equal( "YX", md.pre_match_from(1) )
- assert_equal( "YXa", md.pre_match_from(2) )
- assert_equal( "YXab", md.pre_match_from(3) )
- assert_equal( "YXab", md.pre_match_from(-1) )
- assert_equal( "YXa", md.pre_match_from(-2) )
- assert_equal( "YX", md.pre_match_from(-3) )
+ # matchtree
+
+ def test_matchtree
+ md = /(bb)(cc(dd))(ee)/.match "XXaabbccddeeffXX"
+ assert_equal( [["bb"], ["cc", ["dd"]], ["ee"]] , md.matchtree )
end
+
+ # matchset
- def test_post_match_from
- md = /X(a)(b)(c)X/.match("YXabcXY")
- assert_equal( md.post_match, md.post_match_from )
- assert_equal( md.post_match, md.post_match_from(0) )
- assert_equal( "Y", md.post_match_from )
- assert_equal( "Y", md.post_match_from(0) )
- assert_equal( "bcXY", md.post_match_from(1) )
- assert_equal( "cXY", md.post_match_from(2) )
- assert_equal( "XY", md.post_match_from(3) )
- assert_equal( "XY", md.post_match_from(-1) )
- assert_equal( "cXY", md.post_match_from(-2) )
- assert_equal( "bcXY", md.post_match_from(-3) )
+ def test_matchset
+ md = /(bb)(cc(dd))(ee)/.match "XXaabbccddeeffXX"
+ assert_equal( ["XXaa", [["bb"], ["cc", ["dd"]], ["ee"]], "ffXX"] , md.matchset )
end
+
+# # match_from
+#
+# def test_pre_match_from
+# md = /X(a)(b)(c)X/.match("YXabcXY")
+# assert_equal( md.pre_match, md.pre_match_from )
+# assert_equal( md.pre_match, md.pre_match_from(0) )
+# assert_equal( "Y", md.pre_match_from )
+# assert_equal( "Y", md.pre_match_from(0) )
+# assert_equal( "YX", md.pre_match_from(1) )
+# assert_equal( "YXa", md.pre_match_from(2) )
+# assert_equal( "YXab", md.pre_match_from(3) )
+# assert_equal( "YXab", md.pre_match_from(-1) )
+# assert_equal( "YXa", md.pre_match_from(-2) )
+# assert_equal( "YX", md.pre_match_from(-3) )
+# end
+#
+# def test_post_match_from
+# md = /X(a)(b)(c)X/.match("YXabcXY")
+# assert_equal( md.post_match, md.post_match_from )
+# assert_equal( md.post_match, md.post_match_from(0) )
+# assert_equal( "Y", md.post_match_from )
+# assert_equal( "Y", md.post_match_from(0) )
+# assert_equal( "bcXY", md.post_match_from(1) )
+# assert_equal( "cXY", md.post_match_from(2) )
+# assert_equal( "XY", md.post_match_from(3) )
+# assert_equal( "XY", md.post_match_from(-1) )
+# assert_equal( "cXY", md.post_match_from(-2) )
+# assert_equal( "bcXY", md.post_match_from(-3) )
+# end
end