Vérification du script rp_cmd.py avec pylint

This commit is contained in:
Philippe Roy 2022-12-07 17:40:14 +01:00
parent 4a7efd400f
commit e081e5225d
3 changed files with 19 additions and 53 deletions

Binary file not shown.

26
rp.py
View File

@ -10,15 +10,13 @@ import os
import webbrowser # Lien internet import webbrowser # Lien internet
import threading # Multithreading import threading # Multithreading
import xml.etree.ElementTree as ET # Creating/parsing XML file import xml.etree.ElementTree as ET # Creating/parsing XML file
import runpy # Execution de script Python légère (sans import) import runpy # Exécution de script Python légère (sans import)
import ast # Parser de code Python from pylint import epylint as lint # Mesure de la qualité d'un code Python
from pylint import epylint as lint # Controle de code Python
import rp_map1 as rp_map # Map definition import rp_map1 as rp_map # Map definition
import rp_doc # Documentation import rp_doc # Documentation
import rp_store # Store import rp_store # Store
import rp_about # About import rp_about # About
# import ct_cmd # user script (commands)
############################################################################### ###############################################################################
# rp.py # rp.py
@ -45,11 +43,6 @@ scene.objects['Commands']['debug_fps']=False
# Memory # Memory
sys.setrecursionlimit(10**5) # Limite sur la récursivité (valeur par défaut : 1000) -> segfault de Blender sys.setrecursionlimit(10**5) # Limite sur la récursivité (valeur par défaut : 1000) -> segfault de Blender
# Dynamic import user file
# importlib.invalidate_caches()
# ct_map = importlib.import_module('ct_map1') # Waves script
# ct_cmd = importlib.import_module('ct_cmd') # User script (commands) -> segfault de Blender
# UPBGE scene # UPBGE scene
eevee = bpy.context.scene.eevee eevee = bpy.context.scene.eevee
fps_time=0.0 fps_time=0.0
@ -221,15 +214,14 @@ def terrain_init (cont):
## ##
def python_validation(): def python_validation():
lint.py_run('rp_cmd.py --disable=C --disable=W --disable=R') (pylint_stdout, pylint_stderr) = lint.py_run('rp_cmd.py --disable=C --disable=W --disable=R', return_std=True)
with open('rp_cmd.py') as f: stdout = pylint_stdout.read()
contents = f.read() stderr = pylint_stderr.read()
try: if " error (" in stdout: # Présence d'erreur
ast.parse(contents) print(stdout)
# or compile(contents, fname, 'exec', ast.PyCF_ONLY_AST)
return True
except SyntaxError:
return False return False
else:
return True
def terrain_run (): def terrain_run ():

View File

@ -28,49 +28,23 @@ from rp_lib import * # Bibliothèque Ropy
def commandes(): def commandes():
# Ecrire votre code ici ... # Ecrire votre code ici ...
print ('okok')
rp_gauche()
rp_avancer()
rp_avancer()
rp_droite()
for i in range (10):
rp_avancer()
rp_marquer()
rp_fin() # A garder rp_fin() # A garder
############################################################################### ###############################################################################
# En: Externals calls << DONT CHANGE THIS SECTION >> # En: External call << DONT CHANGE THIS SECTION >>
# Fr: Appels externes << NE PAS MODIFIER CETTE SECTION >> # Fr: Appel externe << NE PAS MODIFIER CETTE SECTION >>
############################################################################### ###############################################################################
if __name__=='start': if __name__=='start':
thread_cmd_start(commandes) thread_cmd_start(commandes)
if __name__=='stop': if __name__=='stop':
thread_cmd_stop() thread_cmd_stop()