13
13
14
14
class InstallUpgradeSniff implements Sniff
15
15
{
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
+ ];
17
61
18
62
/**
19
63
* @var string[]
20
64
*/
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 '
38
68
];
39
69
40
70
/**
@@ -58,9 +88,9 @@ public function process(File $phpcsFile, $stackPtr)
58
88
59
89
$ fileInfo = new SplFileInfo ($ phpcsFile ->getFilename ());
60
90
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 );
64
94
}
65
95
}
66
96
@@ -73,7 +103,7 @@ public function process(File $phpcsFile, $stackPtr)
73
103
. "- Create a data patch within module's Setup/Patch/Data folder for data upgrades. \n"
74
104
. "- Use declarative schema approach in module's etc/db_schema.xml file for schema changes. " ,
75
105
0 ,
76
- self ::ERROR_CODE
106
+ self ::INVALID_DIRECTORIES_ERROR_CODES [ $ folderName ]
77
107
);
78
108
}
79
109
}
0 commit comments