mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-19 16:12:52 -06:00
Added linearization to py-bindings.
This commit is contained in:
@@ -2,6 +2,11 @@
|
||||
import gf
|
||||
import unittest
|
||||
|
||||
|
||||
samples = [
|
||||
('is 89 odd',"Odd (Number 89)"),
|
||||
('is 21 prime',"Prime (Number 21)")]
|
||||
|
||||
import re
|
||||
hexre = re.compile('0x[0-9a-f]+:[ ]*')
|
||||
def rmprefix(obj):
|
||||
@@ -11,9 +16,7 @@ def rmprefix(obj):
|
||||
|
||||
class TestParsing(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.lexed = [
|
||||
('is 89 odd',"Odd (Number 89)"),
|
||||
('is 21 prime',"Prime (Number 21)")]
|
||||
self.lexed = samples
|
||||
self.lang = 'QueryEng'
|
||||
self.pgf = "Query.pgf"
|
||||
def test_createPgf(self):
|
||||
@@ -36,5 +39,24 @@ class TestParsing(unittest.TestCase):
|
||||
pt = rmprefix(ps[0])
|
||||
self.assertEqual(pt,t)
|
||||
|
||||
|
||||
class TestLinearize(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.samples = samples
|
||||
self.pgf = gf.read_pgf('Query.pgf')
|
||||
self.lang = gf.read_language('QueryEng')
|
||||
|
||||
def test_Linearize(self):
|
||||
l = self.lang
|
||||
for s,t in self.samples:
|
||||
t = self.pgf.parse(s, l)[0]
|
||||
self.assertEqual(s,self.pgf.lin(l,t))
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
if 0:
|
||||
q = gf.read_pgf('Query.pgf')
|
||||
l = gf.read_language('QueryEng')
|
||||
ts = q.parse('is 10 prime', l)
|
||||
print ts[0]
|
||||
print q.lin(l,ts[0])
|
||||
|
||||
Reference in New Issue
Block a user