with visual unable studio standard phpcs phpcbf mac failed composer code php phpunit

visual - phpcs standard



¿Cómo puedo suprimir las advertencias de PHPCS usando comentarios? (2)

My TestMyClass.php tiene dos definiciones de clase en el mismo archivo (clase de prueba de unidad), y PHP Code Sniffer se queja de que cada clase debe estar en un archivo por sí misma . ¿Cómo puedo suprimir esta advertencia?

class MyClassImpl implements MyInterface { // ... } class MyClassTest extends /PHPUnit_Framework_TestCase { // ... }



Puede obtener PHP_CodeSniffer para ignorar archivos o líneas específicos en un archivo mediante los comentarios: https://github.com/squizlabs/PHP_CodeSniffer/wiki/Advanced-Usage#ignoring-files-and-folders

En este caso, el error se generará en su segunda definición de clase, por lo que tendrá que escribir su segunda definición de esta manera:

// @codingStandardsIgnoreStart class MyClassTest extends /PHPUnit_Framework_TestCase { // @codingStandardsIgnoreEnd // ... }

Pero también puede optar por simplemente ignorar todo el archivo si no se supone que debe verificarse, ya sea utilizando el comentario @codingStandardsIgnoreFile o especificando exclusiones en la línea de comando (consulte el enlace anterior para obtener información).

Si considera que hace esto mucho y no desea agregar comentarios a su código, también puede crear su propio estándar de codificación personalizado. Suponiendo que está utilizando el estándar PSR2 en este momento, creará un archivo XML (por ejemplo, mystandard.xml) e incluirá el siguiente contenido:

<?xml version="1.0"?> <ruleset name="MyStandard"> <description>My custom coding standard.</description> <rule ref="PSR2" /> <rule ref="PSR1.Classes.ClassDeclaration.MultipleClasses"> <severity>0</severity> </rule> </ruleset>

Luego ejecute PHP_CodeSniffer de la siguiente manera: phpcs --standard=/path/to/mystandard.xml /path/to/code

Tener su propio conjunto de reglas le permite hacer muchas cosas, incluso cambiar los mensajes de error, cambiar la gravedad o el tipo de un mensaje, incluidos los controles de otros estándares, y establecer reglas globales de ignorar. Más información aquí: https://github.com/squizlabs/PHP_CodeSniffer/wiki/Annotated-ruleset.xml