Exemple #1
0
def test_merge_same_units():
    """Test pseudo_relations.merge_same_units()"""
    tstr_su = """
    ( Root (span 1 5)
      ( Nucleus (span 1 4) (rel2par Problem-Solution)
        ( Nucleus (span 1 3) (rel2par Same-Unit)
          ( Nucleus (leaf 1) (rel2par span) (text _!There, kids_!) )
          ( Satellite (span 2 3) (rel2par elaboration-object-attribute-e)
            ( Nucleus (leaf 2) (rel2par List) (text _!who skipped classes_!) )
            ( Nucleus (leaf 3) (rel2par List) (text _!and refused to participate_!) )
          )
        )
        ( Nucleus (leaf 4) (rel2par Same-Unit) (text _!were asked to solve incredibly hard problems.<P>_!) )
      )
      ( Nucleus (leaf 5) (rel2par Problem-Solution) (text _!A new class was setup to help them get up to speed._!) )
    )
    """
    tstr_merged = """
    ( Root (span 1 2)
      ( Nucleus (leaf 1) (rel2par Problem-Solution) (text _!There, kids who skipped classes and refused to participate were asked to solve incredibly hard problems.<P>_!) )
      ( Nucleus (leaf 2) (rel2par Problem-Solution) (text _!A new class was setup to help them get up to speed._!) )
    )
    """
    key_su = FileId("fake", None, None, None)  # mockup doc key
    t_su = parse_rst_dt_tree(tstr_su)
    merge_same_units(key_su, t_su)
    t_merged_ref = parse_rst_dt_tree(tstr_merged)
    # assert t_su == t_merged_ref
    assert t_su.get_spans() == t_merged_ref.get_spans()
    # assert t_su.leaves() == t_merged_ref.leaves()
    assert ([x.__dict__ for x in t_su.leaves()] ==
            [x.__dict__ for x in t_merged_ref.leaves()])
Exemple #2
0
 def test_tstr1(self):
     t = parse_rst_dt_tree(TSTR1)
     t_text = t.text()
     sp = treenode(t).span
     self.assertEqual((1, 9), t.edu_span())
     self.assertEqual(TEXT1, t_text)
     self.assertEqual(len(t_text), sp.char_end)
Exemple #3
0
 def test_tstr1(self):
     t = parse_rst_dt_tree(TSTR1)
     t_text = t.text()
     sp = treenode(t).span
     self.assertEqual((1, 9), t.edu_span())
     self.assertEqual(TEXT1, t_text)
     self.assertEqual(len(t_text), sp.char_end)
Exemple #4
0
 def _test_trees(self):
     if not self._trees:
         self._trees = {}
         for i, tstr in enumerate([TSTR0, TSTR1]):
             self._trees["tstr%d" % i] = parse.parse_rst_dt_tree(tstr)
         for i in glob.glob('tests/*.dis'):
             bname = os.path.basename(i)
             tfile = os.path.splitext(i)[0]
             self._trees[bname] = parse.read_annotation_file(i, tfile)
     return self._trees
Exemple #5
0
 def _test_trees(self):
     if not self._trees:
         self._trees = {}
         for i, tstr in enumerate([TSTR0, TSTR1]):
             self._trees["tstr%d" % i] = parse.parse_rst_dt_tree(tstr)
         for i in glob.glob('tests/*.dis'):
             bname = os.path.basename(i)
             tfile = os.path.splitext(i)[0]
             self._trees[bname] = parse.read_annotation_file(i, tfile)
     return self._trees
Exemple #6
0
 def test_tstr0(self):
     parse_rst_dt_tree(TSTR0)
Exemple #7
0
 def test_tstr0(self):
     parse_rst_dt_tree(TSTR0)