view ply-3.8/test/pkg_test4/__init__.py @ 11957:92fcdaf0aa62 draft

<wib_jonas> ` set -e; cd share/mtg; tr -d \\\\r <MagicCompRules_20191004.txt > rules.txt
author HackEso <hackeso@esolangs.org>
date Tue, 01 Oct 2019 08:34:16 +0000
parents 343ff337a19b
children
line wrap: on
line source

# 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