Exemple #1
0
 def assert_create_as(self,
                      srccode,
                      exp_expr=None,
                      exp_params=None,
                      exp_valid=True,
                      exp_name='MACRO'):
     pyexpr = compile(exp_expr, '<string>', 'eval') if exp_expr else None
     assert MacroDef.create_from_srccode(srccode) \
            == MacroDef(exp_name, pyexpr, exp_params, exp_valid)
Exemple #2
0
 def test_read_onPredefinedMacroIsNone_setMacroToNone(self):
     parser = self.parse('', MACRO=None)
     assert parser.macros['MACRO'] == MacroDef('MACRO', None)
Exemple #3
0
 def test_read_onNonStrPredefinedMacro_implicitlyConvertToStr(self):
     parser = self.parse('', MACRO=1)
     code_obj = compile("1", '<string>', 'eval')
     assert parser.macros['MACRO'] \
            == MacroDef('MACRO', code_obj)
Exemple #4
0
 def test_read_onPredefinedMacroIsEmptyStr_implicitlyConvertsToNone(self):
     parser = self.parse('', MACRO='')
     assert parser.macros['MACRO'] == MacroDef('MACRO', None)
Exemple #5
0
 def test_read_onPredefinedMacros_makeThemAvailableLikeUsualMacros(self):
     parser = self.parse('', MACRO='a')
     code_obj = compile("self.a", '<string>', 'eval')
     assert parser.macros['MACRO'] == MacroDef('MACRO', code_obj)
Exemple #6
0
 def test_read_onMacro_returnsParsedMacro(self):
     parser = self.parse('\n\n#define MACRO 3')
     assert parser.macros['MACRO'] \
            == MacroDef('MACRO', compile('3', '<string>', 'eval'))
Exemple #7
0
 def test_init_setsAttrs(self):
     macro = MacroDef('NAME', '1 + 2', (), False)
     assert macro.name == 'NAME'
     assert macro.code == '1 + 2'
     assert macro.params == ()
     assert not macro.valid
Exemple #8
0
 class Container:
     macro = MacroDef('macro', '1')
Exemple #9
0
 class Container:
     macro = MacroDef('MACRO', valid=False)
Exemple #10
0
 class Container:
     macro = MacroDef('MACRO', None)