@@ -338,49 +338,72 @@ Environment Markers
338
338
>>> import os
339
339
340
340
>>> print(im("sys_platform"))
341
- Invalid marker: 'sys_platform', parse error at ''
341
+ Expected marker operator, one of <=, <, !=, ==, >=, >, ~=, ===, in, not in
342
+ sys_platform
343
+ ^
342
344
343
345
>>> print(im("sys_platform=="))
344
- Invalid marker: 'sys_platform==', parse error at ''
346
+ Expected a marker variable or quoted string
347
+ sys_platform==
348
+ ^
345
349
346
350
>>> print(im("sys_platform=='win32'"))
347
351
False
348
352
349
353
>>> print(im("sys=='x'"))
350
- Invalid marker: "sys=='x'", parse error at "sys=='x'"
354
+ Expected a marker variable or quoted string
355
+ sys=='x'
356
+ ^
351
357
352
358
>>> print(im("(extra)"))
353
- Invalid marker: '(extra)', parse error at ')'
359
+ Expected marker operator, one of <=, <, !=, ==, >=, >, ~=, ===, in, not in
360
+ (extra)
361
+ ^
354
362
355
363
>>> print(im("(extra"))
356
- Invalid marker: '(extra', parse error at ''
364
+ Expected marker operator, one of <=, <, !=, ==, >=, >, ~=, ===, in, not in
365
+ (extra
366
+ ^
357
367
358
368
>>> print(im("os.open('foo')=='y'"))
359
- Invalid marker: "os.open('foo')=='y'", parse error at 'os.open('
369
+ Expected a marker variable or quoted string
370
+ os.open('foo')=='y'
371
+ ^
360
372
361
373
>>> print(im("'x'=='y' and os.open('foo')=='y'")) # no short-circuit!
362
- Invalid marker: "'x'=='y' and os.open('foo')=='y'", parse error at 'and os.o'
374
+ Expected a marker variable or quoted string
375
+ 'x'=='y' and os.open('foo')=='y'
376
+ ^
363
377
364
378
>>> print(im("'x'=='x' or os.open('foo')=='y'")) # no short-circuit!
365
- Invalid marker: "'x'=='x' or os.open('foo')=='y'", parse error at 'or os.op'
366
-
367
- >>> print(im("'x' < 'y' < 'z'"))
368
- Invalid marker: "'x' < 'y' < 'z'", parse error at "< 'z'"
379
+ Expected a marker variable or quoted string
380
+ 'x'=='x' or os.open('foo')=='y'
381
+ ^
369
382
370
383
>>> print(im("r'x'=='x'"))
371
- Invalid marker: "r'x'=='x'", parse error at "r'x'=='x"
384
+ Expected a marker variable or quoted string
385
+ r'x'=='x'
386
+ ^
372
387
373
388
>>> print(im("'''x'''=='x'"))
374
- Invalid marker: "'''x'''=='x'", parse error at "'x'''=='"
389
+ Expected marker operator, one of <=, <, !=, ==, >=, >, ~=, ===, in, not in
390
+ '''x'''=='x'
391
+ ^
375
392
376
393
>>> print(im('"""x"""=="x"'))
377
- Invalid marker: '"""x"""=="x"', parse error at '"x"""=="'
394
+ Expected marker operator, one of <=, <, !=, ==, >=, >, ~=, ===, in, not in
395
+ """x"""=="x"
396
+ ^
378
397
379
398
>>> print(im(r"x\n=='x'"))
380
- Invalid marker: "x\\n=='x'", parse error at "x\\n=='x'"
399
+ Expected a marker variable or quoted string
400
+ x\n=='x'
401
+ ^
381
402
382
403
>>> print(im("os.open=='y'"))
383
- Invalid marker: "os.open=='y'", parse error at 'os.open='
404
+ Expected a marker variable or quoted string
405
+ os.open=='y'
406
+ ^
384
407
385
408
>>> em("sys_platform=='win32'") == (sys.platform=='win32')
386
409
True
0 commit comments