diff --git a/tests/skills/cases/role-compile/_skill.json b/tests/skills/cases/role-compile/_skill.json
new file mode 100644
index 00000000..7737bb2f
--- /dev/null
+++ b/tests/skills/cases/role-compile/_skill.json
@@ -0,0 +1,12 @@
+{
+ "script": "role-compile/scripts/role-compile",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-JsonPath", "from": "inputFile" },
+ { "flag": "-OutputDir", "from": "workDir" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/role-compile/basic-role.json b/tests/skills/cases/role-compile/basic-role.json
new file mode 100644
index 00000000..ab6787e3
--- /dev/null
+++ b/tests/skills/cases/role-compile/basic-role.json
@@ -0,0 +1,19 @@
+{
+ "name": "Роль с базовыми правами",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ }
+ ],
+ "input": {
+ "name": "Кладовщик",
+ "rights": [
+ { "object": "Catalog.Товары", "rights": ["Read", "View"] }
+ ]
+ },
+ "expect": {
+ "files": ["Кладовщик.xml", "Кладовщик/Ext/Rights.xml"]
+ }
+}
diff --git a/tests/skills/cases/role-compile/snapshots/basic-role/Catalogs/Товары.xml b/tests/skills/cases/role-compile/snapshots/basic-role/Catalogs/Товары.xml
new file mode 100644
index 00000000..15a89376
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/basic-role/Catalogs/Товары.xml
@@ -0,0 +1,327 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+
+ Товары
+
+
+ ru
+ Товары
+
+
+
+ false
+ HierarchyFoldersAndItems
+ false
+ 2
+ true
+ true
+
+ ToItems
+ 9
+ 25
+ String
+ Variable
+ WholeCatalog
+ false
+ true
+ AsDescription
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ Auto
+ InDialog
+ true
+ BothWays
+
+ Catalog.Товары.StandardAttribute.Description
+ Catalog.Товары.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
diff --git a/tests/skills/cases/role-compile/snapshots/basic-role/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/role-compile/snapshots/basic-role/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/role-compile/snapshots/basic-role/Configuration.xml b/tests/skills/cases/role-compile/snapshots/basic-role/Configuration.xml
new file mode 100644
index 00000000..ab2a9dc4
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/basic-role/Configuration.xml
@@ -0,0 +1,252 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+ UUID-012
+ UUID-013
+
+
+ UUID-014
+ UUID-015
+
+
+
+ TestConfig
+
+
+ ru
+ TestConfig
+
+
+
+
+ Version8_3_24
+ ManagedApplication
+
+ PlatformApplication
+
+ Russian
+
+
+
+
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Biometrics
+ true
+
+
+ Location
+ false
+
+
+ BackgroundLocation
+ false
+
+
+ BluetoothPrinters
+ false
+
+
+ WiFiPrinters
+ false
+
+
+ Contacts
+ false
+
+
+ Calendars
+ false
+
+
+ PushNotifications
+ false
+
+
+ LocalNotifications
+ false
+
+
+ InAppPurchases
+ false
+
+
+ PersonalComputerFileExchange
+ false
+
+
+ Ads
+ false
+
+
+ NumberDialing
+ false
+
+
+ CallProcessing
+ false
+
+
+ CallLog
+ false
+
+
+ AutoSendSMS
+ false
+
+
+ ReceiveSMS
+ false
+
+
+ SMSLog
+ false
+
+
+ Camera
+ false
+
+
+ Microphone
+ false
+
+
+ MusicLibrary
+ false
+
+
+ PictureAndVideoLibraries
+ false
+
+
+ AudioPlaybackAndVibration
+ false
+
+
+ BackgroundAudioPlaybackAndVibration
+ false
+
+
+ InstallPackages
+ false
+
+
+ OSBackup
+ true
+
+
+ ApplicationUsageStatistics
+ false
+
+
+ BarcodeScanning
+ false
+
+
+ BackgroundAudioRecording
+ false
+
+
+ AllFilesAccess
+ false
+
+
+ Videoconferences
+ false
+
+
+ NFC
+ false
+
+
+ DocumentScanning
+ false
+
+
+ SpeechToText
+ false
+
+
+ Geofences
+ false
+
+
+ IncomingShareRequests
+ false
+
+
+ AllIncomingShareRequestsTypesProcessing
+ false
+
+
+
+
+
+ Normal
+
+
+ Language.Русский
+
+
+
+
+
+ Managed
+ NotAutoFree
+ DontUse
+ DontUse
+ Taxi
+ DontUse
+ Version8_3_24
+
+
+
+ Русский
+ Товары
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/snapshots/basic-role/Languages/Русский.xml b/tests/skills/cases/role-compile/snapshots/basic-role/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/basic-role/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/snapshots/basic-role/Кладовщик.xml b/tests/skills/cases/role-compile/snapshots/basic-role/Кладовщик.xml
new file mode 100644
index 00000000..588af912
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/basic-role/Кладовщик.xml
@@ -0,0 +1,32 @@
+
+
+
+
+ Кладовщик
+
+
+ ru
+ Кладовщик
+
+
+
+
+
+
diff --git a/tests/skills/cases/role-compile/snapshots/basic-role/Кладовщик/Ext/Rights.xml b/tests/skills/cases/role-compile/snapshots/basic-role/Кладовщик/Ext/Rights.xml
new file mode 100644
index 00000000..bc171791
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/basic-role/Кладовщик/Ext/Rights.xml
@@ -0,0 +1,9 @@
+
+
+ false
+ true
+ false
+
diff --git a/tests/skills/cases/role-info/_skill.json b/tests/skills/cases/role-info/_skill.json
new file mode 100644
index 00000000..64bf87a7
--- /dev/null
+++ b/tests/skills/cases/role-info/_skill.json
@@ -0,0 +1,11 @@
+{
+ "script": "role-info/scripts/role-info",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-RightsPath", "from": "workPath", "field": "rightsPath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/role-info/overview.json b/tests/skills/cases/role-info/overview.json
new file mode 100644
index 00000000..e64a3772
--- /dev/null
+++ b/tests/skills/cases/role-info/overview.json
@@ -0,0 +1,16 @@
+{
+ "name": "Обзор роли",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ },
+ {
+ "script": "role-compile/scripts/role-compile",
+ "input": { "name": "Тест", "rights": [{ "object": "Catalog.Товары", "rights": ["Read"] }] },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ }
+ ],
+ "params": { "rightsPath": "Тест/Ext/Rights.xml" }
+}
diff --git a/tests/skills/cases/role-info/snapshots/overview/Catalogs/Товары.xml b/tests/skills/cases/role-info/snapshots/overview/Catalogs/Товары.xml
new file mode 100644
index 00000000..15a89376
--- /dev/null
+++ b/tests/skills/cases/role-info/snapshots/overview/Catalogs/Товары.xml
@@ -0,0 +1,327 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+
+ Товары
+
+
+ ru
+ Товары
+
+
+
+ false
+ HierarchyFoldersAndItems
+ false
+ 2
+ true
+ true
+
+ ToItems
+ 9
+ 25
+ String
+ Variable
+ WholeCatalog
+ false
+ true
+ AsDescription
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ Auto
+ InDialog
+ true
+ BothWays
+
+ Catalog.Товары.StandardAttribute.Description
+ Catalog.Товары.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
diff --git a/tests/skills/cases/role-info/snapshots/overview/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/role-info/snapshots/overview/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/role-info/snapshots/overview/Configuration.xml b/tests/skills/cases/role-info/snapshots/overview/Configuration.xml
new file mode 100644
index 00000000..ab2a9dc4
--- /dev/null
+++ b/tests/skills/cases/role-info/snapshots/overview/Configuration.xml
@@ -0,0 +1,252 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+ UUID-012
+ UUID-013
+
+
+ UUID-014
+ UUID-015
+
+
+
+ TestConfig
+
+
+ ru
+ TestConfig
+
+
+
+
+ Version8_3_24
+ ManagedApplication
+
+ PlatformApplication
+
+ Russian
+
+
+
+
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Biometrics
+ true
+
+
+ Location
+ false
+
+
+ BackgroundLocation
+ false
+
+
+ BluetoothPrinters
+ false
+
+
+ WiFiPrinters
+ false
+
+
+ Contacts
+ false
+
+
+ Calendars
+ false
+
+
+ PushNotifications
+ false
+
+
+ LocalNotifications
+ false
+
+
+ InAppPurchases
+ false
+
+
+ PersonalComputerFileExchange
+ false
+
+
+ Ads
+ false
+
+
+ NumberDialing
+ false
+
+
+ CallProcessing
+ false
+
+
+ CallLog
+ false
+
+
+ AutoSendSMS
+ false
+
+
+ ReceiveSMS
+ false
+
+
+ SMSLog
+ false
+
+
+ Camera
+ false
+
+
+ Microphone
+ false
+
+
+ MusicLibrary
+ false
+
+
+ PictureAndVideoLibraries
+ false
+
+
+ AudioPlaybackAndVibration
+ false
+
+
+ BackgroundAudioPlaybackAndVibration
+ false
+
+
+ InstallPackages
+ false
+
+
+ OSBackup
+ true
+
+
+ ApplicationUsageStatistics
+ false
+
+
+ BarcodeScanning
+ false
+
+
+ BackgroundAudioRecording
+ false
+
+
+ AllFilesAccess
+ false
+
+
+ Videoconferences
+ false
+
+
+ NFC
+ false
+
+
+ DocumentScanning
+ false
+
+
+ SpeechToText
+ false
+
+
+ Geofences
+ false
+
+
+ IncomingShareRequests
+ false
+
+
+ AllIncomingShareRequestsTypesProcessing
+ false
+
+
+
+
+
+ Normal
+
+
+ Language.Русский
+
+
+
+
+
+ Managed
+ NotAutoFree
+ DontUse
+ DontUse
+ Taxi
+ DontUse
+ Version8_3_24
+
+
+
+ Русский
+ Товары
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-info/snapshots/overview/Languages/Русский.xml b/tests/skills/cases/role-info/snapshots/overview/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/role-info/snapshots/overview/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-info/snapshots/overview/Тест.xml b/tests/skills/cases/role-info/snapshots/overview/Тест.xml
new file mode 100644
index 00000000..631bc72f
--- /dev/null
+++ b/tests/skills/cases/role-info/snapshots/overview/Тест.xml
@@ -0,0 +1,32 @@
+
+
+
+
+ Тест
+
+
+ ru
+ Тест
+
+
+
+
+
+
diff --git a/tests/skills/cases/role-info/snapshots/overview/Тест/Ext/Rights.xml b/tests/skills/cases/role-info/snapshots/overview/Тест/Ext/Rights.xml
new file mode 100644
index 00000000..bc171791
--- /dev/null
+++ b/tests/skills/cases/role-info/snapshots/overview/Тест/Ext/Rights.xml
@@ -0,0 +1,9 @@
+
+
+ false
+ true
+ false
+
diff --git a/tests/skills/cases/role-validate/_skill.json b/tests/skills/cases/role-validate/_skill.json
new file mode 100644
index 00000000..207d2f0e
--- /dev/null
+++ b/tests/skills/cases/role-validate/_skill.json
@@ -0,0 +1,11 @@
+{
+ "script": "role-validate/scripts/role-validate",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-RightsPath", "from": "workPath", "field": "rightsPath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/role-validate/snapshots/valid-role/Catalogs/Товары.xml b/tests/skills/cases/role-validate/snapshots/valid-role/Catalogs/Товары.xml
new file mode 100644
index 00000000..15a89376
--- /dev/null
+++ b/tests/skills/cases/role-validate/snapshots/valid-role/Catalogs/Товары.xml
@@ -0,0 +1,327 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+
+ Товары
+
+
+ ru
+ Товары
+
+
+
+ false
+ HierarchyFoldersAndItems
+ false
+ 2
+ true
+ true
+
+ ToItems
+ 9
+ 25
+ String
+ Variable
+ WholeCatalog
+ false
+ true
+ AsDescription
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ Auto
+ InDialog
+ true
+ BothWays
+
+ Catalog.Товары.StandardAttribute.Description
+ Catalog.Товары.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
diff --git a/tests/skills/cases/role-validate/snapshots/valid-role/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/role-validate/snapshots/valid-role/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/role-validate/snapshots/valid-role/Configuration.xml b/tests/skills/cases/role-validate/snapshots/valid-role/Configuration.xml
new file mode 100644
index 00000000..ab2a9dc4
--- /dev/null
+++ b/tests/skills/cases/role-validate/snapshots/valid-role/Configuration.xml
@@ -0,0 +1,252 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+ UUID-012
+ UUID-013
+
+
+ UUID-014
+ UUID-015
+
+
+
+ TestConfig
+
+
+ ru
+ TestConfig
+
+
+
+
+ Version8_3_24
+ ManagedApplication
+
+ PlatformApplication
+
+ Russian
+
+
+
+
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Biometrics
+ true
+
+
+ Location
+ false
+
+
+ BackgroundLocation
+ false
+
+
+ BluetoothPrinters
+ false
+
+
+ WiFiPrinters
+ false
+
+
+ Contacts
+ false
+
+
+ Calendars
+ false
+
+
+ PushNotifications
+ false
+
+
+ LocalNotifications
+ false
+
+
+ InAppPurchases
+ false
+
+
+ PersonalComputerFileExchange
+ false
+
+
+ Ads
+ false
+
+
+ NumberDialing
+ false
+
+
+ CallProcessing
+ false
+
+
+ CallLog
+ false
+
+
+ AutoSendSMS
+ false
+
+
+ ReceiveSMS
+ false
+
+
+ SMSLog
+ false
+
+
+ Camera
+ false
+
+
+ Microphone
+ false
+
+
+ MusicLibrary
+ false
+
+
+ PictureAndVideoLibraries
+ false
+
+
+ AudioPlaybackAndVibration
+ false
+
+
+ BackgroundAudioPlaybackAndVibration
+ false
+
+
+ InstallPackages
+ false
+
+
+ OSBackup
+ true
+
+
+ ApplicationUsageStatistics
+ false
+
+
+ BarcodeScanning
+ false
+
+
+ BackgroundAudioRecording
+ false
+
+
+ AllFilesAccess
+ false
+
+
+ Videoconferences
+ false
+
+
+ NFC
+ false
+
+
+ DocumentScanning
+ false
+
+
+ SpeechToText
+ false
+
+
+ Geofences
+ false
+
+
+ IncomingShareRequests
+ false
+
+
+ AllIncomingShareRequestsTypesProcessing
+ false
+
+
+
+
+
+ Normal
+
+
+ Language.Русский
+
+
+
+
+
+ Managed
+ NotAutoFree
+ DontUse
+ DontUse
+ Taxi
+ DontUse
+ Version8_3_24
+
+
+
+ Русский
+ Товары
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-validate/snapshots/valid-role/Languages/Русский.xml b/tests/skills/cases/role-validate/snapshots/valid-role/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/role-validate/snapshots/valid-role/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-validate/snapshots/valid-role/Тест.xml b/tests/skills/cases/role-validate/snapshots/valid-role/Тест.xml
new file mode 100644
index 00000000..631bc72f
--- /dev/null
+++ b/tests/skills/cases/role-validate/snapshots/valid-role/Тест.xml
@@ -0,0 +1,32 @@
+
+
+
+
+ Тест
+
+
+ ru
+ Тест
+
+
+
+
+
+
diff --git a/tests/skills/cases/role-validate/snapshots/valid-role/Тест/Ext/Rights.xml b/tests/skills/cases/role-validate/snapshots/valid-role/Тест/Ext/Rights.xml
new file mode 100644
index 00000000..bc171791
--- /dev/null
+++ b/tests/skills/cases/role-validate/snapshots/valid-role/Тест/Ext/Rights.xml
@@ -0,0 +1,9 @@
+
+
+ false
+ true
+ false
+
diff --git a/tests/skills/cases/role-validate/valid-role.json b/tests/skills/cases/role-validate/valid-role.json
new file mode 100644
index 00000000..4d87f15a
--- /dev/null
+++ b/tests/skills/cases/role-validate/valid-role.json
@@ -0,0 +1,16 @@
+{
+ "name": "Корректная роль проходит валидацию",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ },
+ {
+ "script": "role-compile/scripts/role-compile",
+ "input": { "name": "Тест", "rights": [{ "object": "Catalog.Товары", "rights": ["Read"] }] },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ }
+ ],
+ "params": { "rightsPath": "Тест/Ext/Rights.xml" }
+}
diff --git a/tests/skills/cases/subsystem-compile/_skill.json b/tests/skills/cases/subsystem-compile/_skill.json
new file mode 100644
index 00000000..6c24cfa2
--- /dev/null
+++ b/tests/skills/cases/subsystem-compile/_skill.json
@@ -0,0 +1,12 @@
+{
+ "script": "subsystem-compile/scripts/subsystem-compile",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-DefinitionFile", "from": "inputFile" },
+ { "flag": "-OutputDir", "from": "workDir" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/subsystem-compile/basic.json b/tests/skills/cases/subsystem-compile/basic.json
new file mode 100644
index 00000000..687acbdd
--- /dev/null
+++ b/tests/skills/cases/subsystem-compile/basic.json
@@ -0,0 +1,18 @@
+{
+ "name": "Подсистема с объектами",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ }
+ ],
+ "input": {
+ "name": "Склад",
+ "synonym": "Склад",
+ "objects": ["Catalogs.Товары"]
+ },
+ "expect": {
+ "files": ["Subsystems/Склад.xml"]
+ }
+}
diff --git a/tests/skills/cases/subsystem-compile/snapshots/basic/Catalogs/Товары.xml b/tests/skills/cases/subsystem-compile/snapshots/basic/Catalogs/Товары.xml
new file mode 100644
index 00000000..15a89376
--- /dev/null
+++ b/tests/skills/cases/subsystem-compile/snapshots/basic/Catalogs/Товары.xml
@@ -0,0 +1,327 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+
+ Товары
+
+
+ ru
+ Товары
+
+
+
+ false
+ HierarchyFoldersAndItems
+ false
+ 2
+ true
+ true
+
+ ToItems
+ 9
+ 25
+ String
+ Variable
+ WholeCatalog
+ false
+ true
+ AsDescription
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ Auto
+ InDialog
+ true
+ BothWays
+
+ Catalog.Товары.StandardAttribute.Description
+ Catalog.Товары.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
diff --git a/tests/skills/cases/subsystem-compile/snapshots/basic/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/subsystem-compile/snapshots/basic/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/subsystem-compile/snapshots/basic/Configuration.xml b/tests/skills/cases/subsystem-compile/snapshots/basic/Configuration.xml
new file mode 100644
index 00000000..8a9c2763
--- /dev/null
+++ b/tests/skills/cases/subsystem-compile/snapshots/basic/Configuration.xml
@@ -0,0 +1,253 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+ UUID-012
+ UUID-013
+
+
+ UUID-014
+ UUID-015
+
+
+
+ TestConfig
+
+
+ ru
+ TestConfig
+
+
+
+
+ Version8_3_24
+ ManagedApplication
+
+ PlatformApplication
+
+ Russian
+
+
+
+
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Biometrics
+ true
+
+
+ Location
+ false
+
+
+ BackgroundLocation
+ false
+
+
+ BluetoothPrinters
+ false
+
+
+ WiFiPrinters
+ false
+
+
+ Contacts
+ false
+
+
+ Calendars
+ false
+
+
+ PushNotifications
+ false
+
+
+ LocalNotifications
+ false
+
+
+ InAppPurchases
+ false
+
+
+ PersonalComputerFileExchange
+ false
+
+
+ Ads
+ false
+
+
+ NumberDialing
+ false
+
+
+ CallProcessing
+ false
+
+
+ CallLog
+ false
+
+
+ AutoSendSMS
+ false
+
+
+ ReceiveSMS
+ false
+
+
+ SMSLog
+ false
+
+
+ Camera
+ false
+
+
+ Microphone
+ false
+
+
+ MusicLibrary
+ false
+
+
+ PictureAndVideoLibraries
+ false
+
+
+ AudioPlaybackAndVibration
+ false
+
+
+ BackgroundAudioPlaybackAndVibration
+ false
+
+
+ InstallPackages
+ false
+
+
+ OSBackup
+ true
+
+
+ ApplicationUsageStatistics
+ false
+
+
+ BarcodeScanning
+ false
+
+
+ BackgroundAudioRecording
+ false
+
+
+ AllFilesAccess
+ false
+
+
+ Videoconferences
+ false
+
+
+ NFC
+ false
+
+
+ DocumentScanning
+ false
+
+
+ SpeechToText
+ false
+
+
+ Geofences
+ false
+
+
+ IncomingShareRequests
+ false
+
+
+ AllIncomingShareRequestsTypesProcessing
+ false
+
+
+
+
+
+ Normal
+
+
+ Language.Русский
+
+
+
+
+
+ Managed
+ NotAutoFree
+ DontUse
+ DontUse
+ Taxi
+ DontUse
+ Version8_3_24
+
+
+
+ Русский
+ Товары
+ Склад
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-compile/snapshots/basic/Languages/Русский.xml b/tests/skills/cases/subsystem-compile/snapshots/basic/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/subsystem-compile/snapshots/basic/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-compile/snapshots/basic/Subsystems/Склад.xml b/tests/skills/cases/subsystem-compile/snapshots/basic/Subsystems/Склад.xml
new file mode 100644
index 00000000..fd643c89
--- /dev/null
+++ b/tests/skills/cases/subsystem-compile/snapshots/basic/Subsystems/Склад.xml
@@ -0,0 +1,22 @@
+
+
+
+
+ Склад
+
+
+ ru
+ Склад
+
+
+
+ true
+ true
+ false
+
+
+
+
+
+
+
diff --git a/tests/skills/cases/subsystem-info/_skill.json b/tests/skills/cases/subsystem-info/_skill.json
new file mode 100644
index 00000000..c9f07319
--- /dev/null
+++ b/tests/skills/cases/subsystem-info/_skill.json
@@ -0,0 +1,11 @@
+{
+ "script": "subsystem-info/scripts/subsystem-info",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-SubsystemPath", "from": "workPath", "field": "subsystemPath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/subsystem-info/overview.json b/tests/skills/cases/subsystem-info/overview.json
new file mode 100644
index 00000000..ba66e9ef
--- /dev/null
+++ b/tests/skills/cases/subsystem-info/overview.json
@@ -0,0 +1,17 @@
+{
+ "name": "Обзор подсистемы",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ },
+ {
+ "script": "subsystem-compile/scripts/subsystem-compile",
+ "input": { "name": "Склад", "objects": ["Catalogs.Товары"] },
+ "args": { "-DefinitionFile": "{inputFile}", "-OutputDir": "{workDir}" }
+ }
+ ],
+ "params": { "subsystemPath": "Subsystems/Склад.xml" },
+ "expect": { "stdoutContains": "Склад" }
+}
diff --git a/tests/skills/cases/subsystem-info/snapshots/overview/Catalogs/Товары.xml b/tests/skills/cases/subsystem-info/snapshots/overview/Catalogs/Товары.xml
new file mode 100644
index 00000000..15a89376
--- /dev/null
+++ b/tests/skills/cases/subsystem-info/snapshots/overview/Catalogs/Товары.xml
@@ -0,0 +1,327 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+
+ Товары
+
+
+ ru
+ Товары
+
+
+
+ false
+ HierarchyFoldersAndItems
+ false
+ 2
+ true
+ true
+
+ ToItems
+ 9
+ 25
+ String
+ Variable
+ WholeCatalog
+ false
+ true
+ AsDescription
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ Auto
+ InDialog
+ true
+ BothWays
+
+ Catalog.Товары.StandardAttribute.Description
+ Catalog.Товары.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
diff --git a/tests/skills/cases/subsystem-info/snapshots/overview/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/subsystem-info/snapshots/overview/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/subsystem-info/snapshots/overview/Configuration.xml b/tests/skills/cases/subsystem-info/snapshots/overview/Configuration.xml
new file mode 100644
index 00000000..8a9c2763
--- /dev/null
+++ b/tests/skills/cases/subsystem-info/snapshots/overview/Configuration.xml
@@ -0,0 +1,253 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+ UUID-012
+ UUID-013
+
+
+ UUID-014
+ UUID-015
+
+
+
+ TestConfig
+
+
+ ru
+ TestConfig
+
+
+
+
+ Version8_3_24
+ ManagedApplication
+
+ PlatformApplication
+
+ Russian
+
+
+
+
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Biometrics
+ true
+
+
+ Location
+ false
+
+
+ BackgroundLocation
+ false
+
+
+ BluetoothPrinters
+ false
+
+
+ WiFiPrinters
+ false
+
+
+ Contacts
+ false
+
+
+ Calendars
+ false
+
+
+ PushNotifications
+ false
+
+
+ LocalNotifications
+ false
+
+
+ InAppPurchases
+ false
+
+
+ PersonalComputerFileExchange
+ false
+
+
+ Ads
+ false
+
+
+ NumberDialing
+ false
+
+
+ CallProcessing
+ false
+
+
+ CallLog
+ false
+
+
+ AutoSendSMS
+ false
+
+
+ ReceiveSMS
+ false
+
+
+ SMSLog
+ false
+
+
+ Camera
+ false
+
+
+ Microphone
+ false
+
+
+ MusicLibrary
+ false
+
+
+ PictureAndVideoLibraries
+ false
+
+
+ AudioPlaybackAndVibration
+ false
+
+
+ BackgroundAudioPlaybackAndVibration
+ false
+
+
+ InstallPackages
+ false
+
+
+ OSBackup
+ true
+
+
+ ApplicationUsageStatistics
+ false
+
+
+ BarcodeScanning
+ false
+
+
+ BackgroundAudioRecording
+ false
+
+
+ AllFilesAccess
+ false
+
+
+ Videoconferences
+ false
+
+
+ NFC
+ false
+
+
+ DocumentScanning
+ false
+
+
+ SpeechToText
+ false
+
+
+ Geofences
+ false
+
+
+ IncomingShareRequests
+ false
+
+
+ AllIncomingShareRequestsTypesProcessing
+ false
+
+
+
+
+
+ Normal
+
+
+ Language.Русский
+
+
+
+
+
+ Managed
+ NotAutoFree
+ DontUse
+ DontUse
+ Taxi
+ DontUse
+ Version8_3_24
+
+
+
+ Русский
+ Товары
+ Склад
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-info/snapshots/overview/Languages/Русский.xml b/tests/skills/cases/subsystem-info/snapshots/overview/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/subsystem-info/snapshots/overview/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-info/snapshots/overview/Subsystems/Склад.xml b/tests/skills/cases/subsystem-info/snapshots/overview/Subsystems/Склад.xml
new file mode 100644
index 00000000..fd643c89
--- /dev/null
+++ b/tests/skills/cases/subsystem-info/snapshots/overview/Subsystems/Склад.xml
@@ -0,0 +1,22 @@
+
+
+
+
+ Склад
+
+
+ ru
+ Склад
+
+
+
+ true
+ true
+ false
+
+
+
+
+
+
+
diff --git a/tests/skills/cases/subsystem-validate/_skill.json b/tests/skills/cases/subsystem-validate/_skill.json
new file mode 100644
index 00000000..d9bf093f
--- /dev/null
+++ b/tests/skills/cases/subsystem-validate/_skill.json
@@ -0,0 +1,11 @@
+{
+ "script": "subsystem-validate/scripts/subsystem-validate",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-SubsystemPath", "from": "workPath", "field": "subsystemPath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/subsystem-validate/snapshots/valid/Catalogs/Товары.xml b/tests/skills/cases/subsystem-validate/snapshots/valid/Catalogs/Товары.xml
new file mode 100644
index 00000000..15a89376
--- /dev/null
+++ b/tests/skills/cases/subsystem-validate/snapshots/valid/Catalogs/Товары.xml
@@ -0,0 +1,327 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+
+ Товары
+
+
+ ru
+ Товары
+
+
+
+ false
+ HierarchyFoldersAndItems
+ false
+ 2
+ true
+ true
+
+ ToItems
+ 9
+ 25
+ String
+ Variable
+ WholeCatalog
+ false
+ true
+ AsDescription
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+ Auto
+ InDialog
+ true
+ BothWays
+
+ Catalog.Товары.StandardAttribute.Description
+ Catalog.Товары.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
diff --git a/tests/skills/cases/subsystem-validate/snapshots/valid/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/subsystem-validate/snapshots/valid/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/subsystem-validate/snapshots/valid/Configuration.xml b/tests/skills/cases/subsystem-validate/snapshots/valid/Configuration.xml
new file mode 100644
index 00000000..8a9c2763
--- /dev/null
+++ b/tests/skills/cases/subsystem-validate/snapshots/valid/Configuration.xml
@@ -0,0 +1,253 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+ UUID-006
+ UUID-007
+
+
+ UUID-008
+ UUID-009
+
+
+ UUID-010
+ UUID-011
+
+
+ UUID-012
+ UUID-013
+
+
+ UUID-014
+ UUID-015
+
+
+
+ TestConfig
+
+
+ ru
+ TestConfig
+
+
+
+
+ Version8_3_24
+ ManagedApplication
+
+ PlatformApplication
+
+ Russian
+
+
+
+
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Biometrics
+ true
+
+
+ Location
+ false
+
+
+ BackgroundLocation
+ false
+
+
+ BluetoothPrinters
+ false
+
+
+ WiFiPrinters
+ false
+
+
+ Contacts
+ false
+
+
+ Calendars
+ false
+
+
+ PushNotifications
+ false
+
+
+ LocalNotifications
+ false
+
+
+ InAppPurchases
+ false
+
+
+ PersonalComputerFileExchange
+ false
+
+
+ Ads
+ false
+
+
+ NumberDialing
+ false
+
+
+ CallProcessing
+ false
+
+
+ CallLog
+ false
+
+
+ AutoSendSMS
+ false
+
+
+ ReceiveSMS
+ false
+
+
+ SMSLog
+ false
+
+
+ Camera
+ false
+
+
+ Microphone
+ false
+
+
+ MusicLibrary
+ false
+
+
+ PictureAndVideoLibraries
+ false
+
+
+ AudioPlaybackAndVibration
+ false
+
+
+ BackgroundAudioPlaybackAndVibration
+ false
+
+
+ InstallPackages
+ false
+
+
+ OSBackup
+ true
+
+
+ ApplicationUsageStatistics
+ false
+
+
+ BarcodeScanning
+ false
+
+
+ BackgroundAudioRecording
+ false
+
+
+ AllFilesAccess
+ false
+
+
+ Videoconferences
+ false
+
+
+ NFC
+ false
+
+
+ DocumentScanning
+ false
+
+
+ SpeechToText
+ false
+
+
+ Geofences
+ false
+
+
+ IncomingShareRequests
+ false
+
+
+ AllIncomingShareRequestsTypesProcessing
+ false
+
+
+
+
+
+ Normal
+
+
+ Language.Русский
+
+
+
+
+
+ Managed
+ NotAutoFree
+ DontUse
+ DontUse
+ Taxi
+ DontUse
+ Version8_3_24
+
+
+
+ Русский
+ Товары
+ Склад
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-validate/snapshots/valid/Languages/Русский.xml b/tests/skills/cases/subsystem-validate/snapshots/valid/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/subsystem-validate/snapshots/valid/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-validate/snapshots/valid/Subsystems/Склад.xml b/tests/skills/cases/subsystem-validate/snapshots/valid/Subsystems/Склад.xml
new file mode 100644
index 00000000..fd643c89
--- /dev/null
+++ b/tests/skills/cases/subsystem-validate/snapshots/valid/Subsystems/Склад.xml
@@ -0,0 +1,22 @@
+
+
+
+
+ Склад
+
+
+ ru
+ Склад
+
+
+
+ true
+ true
+ false
+
+
+
+
+
+
+
diff --git a/tests/skills/cases/subsystem-validate/valid.json b/tests/skills/cases/subsystem-validate/valid.json
new file mode 100644
index 00000000..9d7fc592
--- /dev/null
+++ b/tests/skills/cases/subsystem-validate/valid.json
@@ -0,0 +1,16 @@
+{
+ "name": "Корректная подсистема проходит валидацию",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ },
+ {
+ "script": "subsystem-compile/scripts/subsystem-compile",
+ "input": { "name": "Склад", "objects": ["Catalogs.Товары"] },
+ "args": { "-DefinitionFile": "{inputFile}", "-OutputDir": "{workDir}" }
+ }
+ ],
+ "params": { "subsystemPath": "Subsystems/Склад.xml" }
+}