1313
1414class InstallUpgradeSniff implements Sniff
1515{
16- private const ERROR_CODE = 'obsoleteScript ' ;
16+ private const WRONG_PREFIXES = [
17+ 'ObsoleteInstallScript ' => [
18+ 'pattern ' => 'install- ' ,
19+ 'message ' => 'Install scripts are obsolete. '
20+ . 'Please use declarative schema approach in module \'s etc/db_schema.xml file ' ,
21+ ],
22+ 'ObsoleteInstallSchemaScript ' => [
23+ 'pattern ' => 'InstallSchema ' ,
24+ 'message ' => 'InstallSchema scripts are obsolete. '
25+ . 'Please use declarative schema approach in module \'s etc/db_schema.xml file ' ,
26+ ],
27+ 'ObsoleteInstallDataScript ' => [
28+ 'pattern ' => 'InstallData ' ,
29+ 'message ' => 'InstallData scripts are obsolete. '
30+ . 'Please use data patches approach in module \'s Setup/Patch/Data dir ' ,
31+ ],
32+ 'ObsoleteDataInstallScript ' => [
33+ 'pattern ' => 'data-install- ' ,
34+ 'message ' => 'Install scripts are obsolete. Please create class InstallData in module \'s Setup folder ' ,
35+ ],
36+ 'ObsoleteUpgradeScript ' => [
37+ 'pattern ' => 'upgrade- ' ,
38+ 'message ' => 'Upgrade scripts are obsolete. '
39+ . 'Please use declarative schema approach in module \'s etc/db_schema.xml file ' ,
40+ ],
41+ 'ObsoleteUpgradeSchemaScript ' => [
42+ 'pattern ' => 'UpgradeSchema ' ,
43+ 'message ' => 'UpgradeSchema scripts are obsolete. '
44+ . 'Please use declarative schema approach in module \'s etc/db_schema.xml file ' ,
45+ ],
46+ 'ObsoleteUpgradeDataScript ' => [
47+ 'pattern ' => 'UpgradeData ' ,
48+ 'message ' => 'UpgradeData scripts are obsolete. '
49+ . 'Please use data patches approach in module \'s Setup/Patch/Data dir ' ,
50+ ],
51+ 'ObsoleteDataUpgradeScript ' => [
52+ 'pattern ' => 'data-upgrade ' ,
53+ 'message ' => 'Upgrade scripts are obsolete. '
54+ . 'Please use data patches approach in module \'s Setup/Patch/Data dir ' ,
55+ ],
56+ 'ObsoleteRecurringScript ' => [
57+ 'pattern ' => 'recurring ' ,
58+ 'message ' => 'Recurring scripts are obsolete. Please create class Recurring in module \'s Setup folder '
59+ ]
60+ ];
1761
1862 /**
1963 * @var string[]
2064 */
21- private $ wrongPrefixes = [
22- 'install- ' => 'Install scripts are obsolete. '
23- . 'Please use declarative schema approach in module \'s etc/db_schema.xml file ' ,
24- 'InstallSchema ' => 'InstallSchema scripts are obsolete. '
25- . 'Please use declarative schema approach in module \'s etc/db_schema.xml file ' ,
26- 'InstallData ' => 'InstallData scripts are obsolete. '
27- . 'Please use data patches approach in module \'s Setup/Patch/Data dir ' ,
28- 'data-install- ' => 'Install scripts are obsolete. Please create class InstallData in module \'s Setup folder ' ,
29- 'upgrade- ' => 'Upgrade scripts are obsolete. '
30- . 'Please use declarative schema approach in module \'s etc/db_schema.xml file ' ,
31- 'UpgradeSchema ' => 'UpgradeSchema scripts are obsolete. '
32- . 'Please use declarative schema approach in module \'s etc/db_schema.xml file ' ,
33- 'UpgradeData ' => 'UpgradeSchema scripts are obsolete. '
34- . 'Please use data patches approach in module \'s Setup/Patch/Data dir ' ,
35- 'data-upgrade- ' => 'Upgrade scripts are obsolete. '
36- . 'Please use data patches approach in module \'s Setup/Patch/Data dir ' ,
37- 'recurring ' => 'Recurring scripts are obsolete. Please create class Recurring in module \'s Setup folder ' ,
65+ private const INVALID_DIRECTORIES_ERROR_CODES = [
66+ 'data ' => 'DataInvalidDirectory ' ,
67+ 'sql ' => 'SqlInvalidDirectory '
3868 ];
3969
4070 /**
@@ -58,9 +88,9 @@ public function process(File $phpcsFile, $stackPtr)
5888
5989 $ fileInfo = new SplFileInfo ($ phpcsFile ->getFilename ());
6090
61- foreach ($ this -> wrongPrefixes as $ prefix => $ errorMessage ) {
62- if (strpos ($ fileInfo ->getFilename (), $ prefix ) === 0 ) {
63- $ phpcsFile ->addError ($ errorMessage , 0 , self :: ERROR_CODE );
91+ foreach (self :: WRONG_PREFIXES as $ code => $ data ) {
92+ if (strpos ($ fileInfo ->getFilename (), $ data [ ' pattern ' ] ) === 0 ) {
93+ $ phpcsFile ->addError ($ data [ ' message ' ] , 0 , $ code );
6494 }
6595 }
6696
@@ -73,7 +103,7 @@ public function process(File $phpcsFile, $stackPtr)
73103 . "- Create a data patch within module's Setup/Patch/Data folder for data upgrades. \n"
74104 . "- Use declarative schema approach in module's etc/db_schema.xml file for schema changes. " ,
75105 0 ,
76- self ::ERROR_CODE
106+ self ::INVALID_DIRECTORIES_ERROR_CODES [ $ folderName ]
77107 );
78108 }
79109 }
0 commit comments