Skip to content

Commit 5d13432

Browse files
committed
Merge remote-tracking branch 'upstream/master' into rule_argument
2 parents 9e7de24 + 30e706e commit 5d13432

File tree

4 files changed

+56
-38
lines changed

4 files changed

+56
-38
lines changed

.coveragerc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[run]
2+
source =
3+
ometa
4+
parsley.py
5+
examples/parsley_json.py
6+
examples/protocol/netstrings.py
7+
omit =
8+
ometa/_generated/*
9+
*test*.py

.travis.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
language: python
2+
python:
3+
- "2.6"
4+
- "2.7"
5+
6+
install:
7+
- "pip install pytest Twisted coveralls . --use-mirrors"
8+
script:
9+
- "coverage run $(which trial) test_parsley"
10+
- "coverage run -a $(which trial) ometa"
11+
- "coverage run -a $(which py.test) examples"
12+
after_success:
13+
- "coveralls"

ometa/test/test_builder.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,7 @@ def test_markAsTree(self):
325325
x = t.Rule("foo", t.List(
326326
t.Exactly("x")))
327327
g = t.Grammar("TestGrammar", True, [x])
328-
self.assertIn("\n tree = True\n", writePython(g, ""))
328+
self.assert_("\n tree = True\n" in writePython(g, ""))
329329

330330

331331
def test_rule(self):

ometa/test/test_runtime.py

Lines changed: 33 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import unittest
1+
from twisted.trial import unittest
22
from ometa.runtime import OMetaBase, ParseError, expected, eof
33

44
class RuntimeTests(unittest.TestCase):
@@ -53,10 +53,9 @@ def test_exactlyFail(self):
5353

5454
data = "foo"
5555
o = OMetaBase(data)
56-
with self.assertRaises(ParseError) as e:
57-
o.rule_exactly("g")
58-
self.assertEquals(e.exception[1], expected(None, "g"))
59-
self.assertEquals(e.exception[0], 0)
56+
exc = self.assertRaises(ParseError, o.rule_exactly, "g")
57+
self.assertEquals(exc[1], expected(None, "g"))
58+
self.assertEquals(exc[0], 0)
6059

6160

6261

@@ -83,10 +82,9 @@ def test_tokenFailed(self):
8382
"""
8483
data = "foozle"
8584
o = OMetaBase(data)
86-
with self.assertRaises(ParseError) as e:
87-
o.rule_token("fog")
88-
self.assertEqual(e.exception[0], 2)
89-
self.assertEqual(e.exception[1], expected("token", "fog"))
85+
exc = self.assertRaises(ParseError, o.rule_token, "fog")
86+
self.assertEqual(exc[0], 2)
87+
self.assertEqual(exc[1], expected("token", "fog"))
9088

9189

9290
def test_many(self):
@@ -135,12 +133,15 @@ def test_orSimpleFailure(self):
135133
data = "foozle"
136134
o = OMetaBase(data)
137135

138-
with self.assertRaises(ParseError) as e:
139-
o._or([lambda: o.token("fog"),
140-
lambda: o.token("foozik"),
141-
lambda: o.token("woozle")])
142-
self.assertEqual(e.exception[0], 4)
143-
self.assertEqual(e.exception[1], expected("token", "foozik"))
136+
exc = self.assertRaises(
137+
ParseError, o._or, [
138+
lambda: o.token("fog"),
139+
lambda: o.token("foozik"),
140+
lambda: o.token("woozle")
141+
]
142+
)
143+
self.assertEqual(exc[0], 4)
144+
self.assertEqual(exc[1], expected("token", "foozik"))
144145

145146

146147
def test_orFalseSuccess(self):
@@ -183,10 +184,9 @@ def test_notError(self):
183184

184185
data = "xy"
185186
o = OMetaBase(data)
186-
with self.assertRaises(ParseError) as e:
187-
o._not(lambda: o.exactly("x"))
188-
self.assertEqual(e.exception[0], 1)
189-
self.assertEqual(e.exception[1], None)
187+
exc = self.assertRaises(ParseError, o._not, lambda: o.exactly("x"))
188+
self.assertEqual(exc[0], 1)
189+
self.assertEqual(exc[1], None)
190190

191191

192192
def test_spaces(self):
@@ -216,9 +216,9 @@ def test_predFailure(self):
216216
"""
217217

218218
o = OMetaBase("")
219-
with self.assertRaises(ParseError) as e:
220-
o.pred(lambda: (False, ParseError(o.input, 0, None)))
221-
self.assertEqual(e.exception, ParseError(o.input, 0, None))
219+
exc = self.assertRaises(
220+
ParseError, o.pred, lambda: (False, ParseError(o.input, 0, None)))
221+
self.assertEqual(exc, ParseError(o.input, 0, None))
222222

223223

224224
def test_end(self):
@@ -227,9 +227,8 @@ def test_end(self):
227227
if input is left.
228228
"""
229229
o = OMetaBase("abc")
230-
with self.assertRaises(ParseError) as e:
231-
o.rule_end()
232-
self.assertEqual(e.exception, ParseError(o.input, 1, None))
230+
exc = self.assertRaises(ParseError, o.rule_end)
231+
self.assertEqual(exc, ParseError(o.input, 1, None))
233232
o.many(o.rule_anything)
234233
self.assertEqual(o.rule_end(), (True, ParseError("abc", 3, None)))
235234

@@ -242,9 +241,9 @@ def test_label(self):
242241
data = "ooops"
243242
label = 'CustomLabel'
244243
o = OMetaBase(data)
245-
with self.assertRaises(ParseError) as e:
246-
o.label(lambda: o.rule_exactly('x'), label)
247-
self.assertEqual(e.exception,
244+
exc = self.assertRaises(
245+
ParseError, o.label, lambda: o.rule_exactly('x'), label)
246+
self.assertEqual(exc,
248247
ParseError(o.input, 0, expected(label)).withMessage([("Custom Exception:", label, None)]))
249248

250249
def test_letter(self):
@@ -254,9 +253,8 @@ def test_letter(self):
254253
o = OMetaBase("a1")
255254
v, e = o.rule_letter()
256255
self.assertEqual((v, e), ("a", ParseError(o.input, 0, None)))
257-
with self.assertRaises(ParseError) as e:
258-
o.rule_letter()
259-
self.assertEqual(e.exception, ParseError(o.input, 1,
256+
exc = self.assertRaises(ParseError, o.rule_letter)
257+
self.assertEqual(exc, ParseError(o.input, 1,
260258
expected("letter")))
261259

262260

@@ -269,9 +267,8 @@ def test_letterOrDigit(self):
269267
self.assertEqual((v, e), ("a", ParseError(None, 0, None)))
270268
v, e = o.rule_letterOrDigit()
271269
self.assertEqual((v, e), ("1", ParseError(None, 1, None)))
272-
with self.assertRaises(ParseError) as e:
273-
o.rule_letterOrDigit()
274-
self.assertEqual(e.exception,
270+
exc = self.assertRaises(ParseError, o.rule_letterOrDigit)
271+
self.assertEqual(exc,
275272
ParseError(o.input, 2, expected("letter or digit")))
276273

277274

@@ -282,9 +279,8 @@ def test_digit(self):
282279
o = OMetaBase("1a")
283280
v, e = o.rule_digit()
284281
self.assertEqual((v, e), ("1", ParseError("1a", 0, None)))
285-
with self.assertRaises(ParseError) as e:
286-
o.rule_digit()
287-
self.assertEqual(e.exception, ParseError(o.input, 1, expected("digit")))
282+
exc = self.assertRaises(ParseError, o.rule_digit)
283+
self.assertEqual(exc, ParseError(o.input, 1, expected("digit")))
288284

289285

290286

0 commit comments

Comments
 (0)