File: __init__.py

package info (click to toggle)
ply 3.11-10
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,768 kB
  • sloc: python: 10,385; perl: 31; sh: 25; makefile: 18
file content (25 lines) | stat: -rw-r--r-- 561 bytes parent folder | download | duplicates (13)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Tests proper handling of lextab and parsetab files in package structures
# Check of warning messages when files aren't writable

# Here for testing purposes
import sys
if '..' not in sys.path:  
    sys.path.insert(0, '..')

import ply.lex
import ply.yacc

def patched_open(filename, mode):
    if 'w' in mode:
        raise IOError("Permission denied %r" % filename)
    return open(filename, mode)

ply.lex.open = patched_open
ply.yacc.open = patched_open
try:
    from .parsing.calcparse import parser
finally:
    del ply.lex.open
    del ply.yacc.open