diff --git a/tests/skills/cases/form-add/_skill.json b/tests/skills/cases/form-add/_skill.json
new file mode 100644
index 00000000..b0a54e60
--- /dev/null
+++ b/tests/skills/cases/form-add/_skill.json
@@ -0,0 +1,12 @@
+{
+ "script": "form-add/scripts/form-add",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-ObjectPath", "from": "workPath", "field": "objectPath" },
+ { "flag": "-FormName", "from": "case.formName" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/form-add/basic.json b/tests/skills/cases/form-add/basic.json
new file mode 100644
index 00000000..c2eb052c
--- /dev/null
+++ b/tests/skills/cases/form-add/basic.json
@@ -0,0 +1,11 @@
+{
+ "name": "Добавление формы к справочнику",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ }
+ ],
+ "params": { "objectPath": "Catalogs/Товары.xml", "formName": "ФормаЭлемента" }
+}
diff --git a/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары.xml b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары.xml
new file mode 100644
index 00000000..4c20ca8b
--- /dev/null
+++ b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары.xml
@@ -0,0 +1,329 @@
+
+
+
+
+
+ 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
+ Catalog.Товары.Form.ФормаЭлемента
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
+
+
diff --git a/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента.xml b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента.xml
new file mode 100644
index 00000000..f0559742
--- /dev/null
+++ b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form.xml b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form.xml
new file mode 100644
index 00000000..adf193ae
--- /dev/null
+++ b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form.xml
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form/Module.bsl
new file mode 100644
index 00000000..d383d870
--- /dev/null
+++ b/tests/skills/cases/form-add/snapshots/basic/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -0,0 +1,24 @@
+#Область ОбработчикиСобытийФормы
+
+&НаСервере
+Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиСобытийЭлементовФормы
+
+#КонецОбласти
+
+#Область ОбработчикиКомандФормы
+
+#КонецОбласти
+
+#Область ОбработчикиОповещений
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+#КонецОбласти
\ No newline at end of file
diff --git a/tests/skills/cases/form-add/snapshots/basic/Configuration.xml b/tests/skills/cases/form-add/snapshots/basic/Configuration.xml
new file mode 100644
index 00000000..ab2a9dc4
--- /dev/null
+++ b/tests/skills/cases/form-add/snapshots/basic/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/form-add/snapshots/basic/Languages/Русский.xml b/tests/skills/cases/form-add/snapshots/basic/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/form-add/snapshots/basic/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-compile/_skill.json b/tests/skills/cases/form-compile/_skill.json
new file mode 100644
index 00000000..fc08e1c3
--- /dev/null
+++ b/tests/skills/cases/form-compile/_skill.json
@@ -0,0 +1,12 @@
+{
+ "script": "form-compile/scripts/form-compile",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-JsonPath", "from": "inputFile" },
+ { "flag": "-OutputPath", "from": "workPath", "field": "outputPath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/form-compile/catalog-form.json b/tests/skills/cases/form-compile/catalog-form.json
new file mode 100644
index 00000000..4bd2f2e3
--- /dev/null
+++ b/tests/skills/cases/form-compile/catalog-form.json
@@ -0,0 +1,25 @@
+{
+ "name": "Форма элемента справочника",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары", "attributes": [{ "name": "Артикул", "type": "String", "length": 25 }] },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ },
+ {
+ "script": "form-add/scripts/form-add",
+ "args": { "-ObjectPath": "{workDir}/Catalogs/Товары.xml", "-FormName": "ФормаЭлемента" }
+ }
+ ],
+ "params": { "outputPath": "Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form.xml" },
+ "input": {
+ "title": "Товар",
+ "attributes": [
+ { "name": "Объект", "type": "FormDataStructure", "main": true }
+ ],
+ "elements": [
+ { "type": "InputField", "dataPath": "Объект.Наименование", "title": "Наименование" },
+ { "type": "InputField", "dataPath": "Объект.Артикул", "title": "Артикул" }
+ ]
+ }
+}
diff --git a/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары.xml b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары.xml
new file mode 100644
index 00000000..a29ddd70
--- /dev/null
+++ b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары.xml
@@ -0,0 +1,373 @@
+
+
+
+
+
+ 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
+ Catalog.Товары.Form.ФормаЭлемента
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
+ Артикул
+
+
+ ru
+ Артикул
+
+
+
+
+ xs:string
+
+ 25
+ Variable
+
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ false
+
+ DontCheck
+ Items
+
+
+ Auto
+ Auto
+
+
+ Auto
+
+ DontIndex
+ Use
+ Use
+
+
+
+
+
+
diff --git a/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента.xml b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента.xml
new file mode 100644
index 00000000..f0559742
--- /dev/null
+++ b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form.xml b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form.xml
new file mode 100644
index 00000000..7c490220
--- /dev/null
+++ b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form.xml
@@ -0,0 +1,23 @@
+
+
diff --git a/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form/Module.bsl
new file mode 100644
index 00000000..d383d870
--- /dev/null
+++ b/tests/skills/cases/form-compile/snapshots/catalog-form/Catalogs/Товары/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -0,0 +1,24 @@
+#Область ОбработчикиСобытийФормы
+
+&НаСервере
+Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиСобытийЭлементовФормы
+
+#КонецОбласти
+
+#Область ОбработчикиКомандФормы
+
+#КонецОбласти
+
+#Область ОбработчикиОповещений
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+#КонецОбласти
\ No newline at end of file
diff --git a/tests/skills/cases/form-compile/snapshots/catalog-form/Configuration.xml b/tests/skills/cases/form-compile/snapshots/catalog-form/Configuration.xml
new file mode 100644
index 00000000..ab2a9dc4
--- /dev/null
+++ b/tests/skills/cases/form-compile/snapshots/catalog-form/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/form-compile/snapshots/catalog-form/Languages/Русский.xml b/tests/skills/cases/form-compile/snapshots/catalog-form/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/form-compile/snapshots/catalog-form/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-info/_skill.json b/tests/skills/cases/form-info/_skill.json
new file mode 100644
index 00000000..71fda0a1
--- /dev/null
+++ b/tests/skills/cases/form-info/_skill.json
@@ -0,0 +1,11 @@
+{
+ "script": "form-info/scripts/form-info",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-FormPath", "from": "workPath", "field": "formPath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/form-info/overview.json b/tests/skills/cases/form-info/overview.json
new file mode 100644
index 00000000..533a777e
--- /dev/null
+++ b/tests/skills/cases/form-info/overview.json
@@ -0,0 +1,20 @@
+{
+ "name": "Обзор формы",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ },
+ {
+ "script": "form-add/scripts/form-add",
+ "args": { "-ObjectPath": "{workDir}/Catalogs/Товары.xml", "-FormName": "Форма" }
+ },
+ {
+ "script": "form-compile/scripts/form-compile",
+ "input": { "title": "Тест", "attributes": [{ "name": "Объект", "type": "FormDataStructure", "main": true }], "elements": [{ "type": "InputField", "dataPath": "Объект.Наименование" }] },
+ "args": { "-JsonPath": "{inputFile}", "-OutputPath": "{workDir}/Catalogs/Товары/Forms/Форма/Ext/Form.xml" }
+ }
+ ],
+ "params": { "formPath": "Catalogs/Товары/Forms/Форма/Ext/Form.xml" }
+}
diff --git a/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары.xml b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары.xml
new file mode 100644
index 00000000..1f9f81df
--- /dev/null
+++ b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары.xml
@@ -0,0 +1,329 @@
+
+
+
+
+
+ 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
+ Catalog.Товары.Form.Форма
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
+
+
diff --git a/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма.xml b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма.xml
new file mode 100644
index 00000000..dffeea01
--- /dev/null
+++ b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма/Ext/Form.xml b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма/Ext/Form.xml
new file mode 100644
index 00000000..57d6247e
--- /dev/null
+++ b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма/Ext/Form.xml
@@ -0,0 +1,23 @@
+
+
diff --git a/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма/Ext/Form/Module.bsl b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма/Ext/Form/Module.bsl
new file mode 100644
index 00000000..d383d870
--- /dev/null
+++ b/tests/skills/cases/form-info/snapshots/overview/Catalogs/Товары/Forms/Форма/Ext/Form/Module.bsl
@@ -0,0 +1,24 @@
+#Область ОбработчикиСобытийФормы
+
+&НаСервере
+Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиСобытийЭлементовФормы
+
+#КонецОбласти
+
+#Область ОбработчикиКомандФормы
+
+#КонецОбласти
+
+#Область ОбработчикиОповещений
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+#КонецОбласти
\ No newline at end of file
diff --git a/tests/skills/cases/form-info/snapshots/overview/Configuration.xml b/tests/skills/cases/form-info/snapshots/overview/Configuration.xml
new file mode 100644
index 00000000..ab2a9dc4
--- /dev/null
+++ b/tests/skills/cases/form-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/form-info/snapshots/overview/Languages/Русский.xml b/tests/skills/cases/form-info/snapshots/overview/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/form-info/snapshots/overview/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-validate/_skill.json b/tests/skills/cases/form-validate/_skill.json
new file mode 100644
index 00000000..8989f72b
--- /dev/null
+++ b/tests/skills/cases/form-validate/_skill.json
@@ -0,0 +1,11 @@
+{
+ "script": "form-validate/scripts/form-validate",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-FormPath", "from": "workPath", "field": "formPath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары.xml b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары.xml
new file mode 100644
index 00000000..1f9f81df
--- /dev/null
+++ b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары.xml
@@ -0,0 +1,329 @@
+
+
+
+
+
+ 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
+ Catalog.Товары.Form.Форма
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Automatic
+ Use
+
+
+
+
+
+ DontUse
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
+
+
diff --git a/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Ext/ObjectModule.bsl b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма.xml b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма.xml
new file mode 100644
index 00000000..dffeea01
--- /dev/null
+++ b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма/Ext/Form.xml b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма/Ext/Form.xml
new file mode 100644
index 00000000..57d6247e
--- /dev/null
+++ b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма/Ext/Form.xml
@@ -0,0 +1,23 @@
+
+
diff --git a/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма/Ext/Form/Module.bsl b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма/Ext/Form/Module.bsl
new file mode 100644
index 00000000..d383d870
--- /dev/null
+++ b/tests/skills/cases/form-validate/snapshots/valid-form/Catalogs/Товары/Forms/Форма/Ext/Form/Module.bsl
@@ -0,0 +1,24 @@
+#Область ОбработчикиСобытийФормы
+
+&НаСервере
+Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиСобытийЭлементовФормы
+
+#КонецОбласти
+
+#Область ОбработчикиКомандФормы
+
+#КонецОбласти
+
+#Область ОбработчикиОповещений
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+#КонецОбласти
\ No newline at end of file
diff --git a/tests/skills/cases/form-validate/snapshots/valid-form/Configuration.xml b/tests/skills/cases/form-validate/snapshots/valid-form/Configuration.xml
new file mode 100644
index 00000000..ab2a9dc4
--- /dev/null
+++ b/tests/skills/cases/form-validate/snapshots/valid-form/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/form-validate/snapshots/valid-form/Languages/Русский.xml b/tests/skills/cases/form-validate/snapshots/valid-form/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/form-validate/snapshots/valid-form/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/form-validate/valid-form.json b/tests/skills/cases/form-validate/valid-form.json
new file mode 100644
index 00000000..394229ab
--- /dev/null
+++ b/tests/skills/cases/form-validate/valid-form.json
@@ -0,0 +1,20 @@
+{
+ "name": "Корректная форма проходит валидацию",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Товары" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ },
+ {
+ "script": "form-add/scripts/form-add",
+ "args": { "-ObjectPath": "{workDir}/Catalogs/Товары.xml", "-FormName": "Форма" }
+ },
+ {
+ "script": "form-compile/scripts/form-compile",
+ "input": { "title": "Тест", "attributes": [{ "name": "Объект", "type": "FormDataStructure", "main": true }], "elements": [{ "type": "InputField", "dataPath": "Объект.Наименование" }] },
+ "args": { "-JsonPath": "{inputFile}", "-OutputPath": "{workDir}/Catalogs/Товары/Forms/Форма/Ext/Form.xml" }
+ }
+ ],
+ "params": { "formPath": "Catalogs/Товары/Forms/Форма" }
+}
diff --git a/tests/skills/cases/help-add/_skill.json b/tests/skills/cases/help-add/_skill.json
new file mode 100644
index 00000000..f1459779
--- /dev/null
+++ b/tests/skills/cases/help-add/_skill.json
@@ -0,0 +1,12 @@
+{
+ "script": "help-add/scripts/add-help",
+ "setup": "none",
+ "args": [
+ { "flag": "-ObjectName", "from": "case.objectName" },
+ { "flag": "-SrcDir", "from": "workDir" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/help-add/basic.json b/tests/skills/cases/help-add/basic.json
new file mode 100644
index 00000000..d3fae3d2
--- /dev/null
+++ b/tests/skills/cases/help-add/basic.json
@@ -0,0 +1,10 @@
+{
+ "name": "Добавление справки к обработке",
+ "preRun": [
+ {
+ "script": "epf-init/scripts/init",
+ "args": { "-Name": "МояОбработка", "-SrcDir": "{workDir}" }
+ }
+ ],
+ "params": { "objectName": "МояОбработка" }
+}
diff --git a/tests/skills/cases/help-add/snapshots/basic/МояОбработка.xml b/tests/skills/cases/help-add/snapshots/basic/МояОбработка.xml
new file mode 100644
index 00000000..7074d760
--- /dev/null
+++ b/tests/skills/cases/help-add/snapshots/basic/МояОбработка.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+
+ МояОбработка
+
+
+ ru
+ МояОбработка
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/Help.xml b/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/Help.xml
new file mode 100644
index 00000000..b9fbd0bc
--- /dev/null
+++ b/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/Help.xml
@@ -0,0 +1,4 @@
+
+
+ ru
+
\ No newline at end of file
diff --git a/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/Help/ru.html b/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/Help/ru.html
new file mode 100644
index 00000000..62498456
--- /dev/null
+++ b/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/Help/ru.html
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+ МояОбработка
+ Описание.
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl b/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..15543d27
--- /dev/null
+++ b/tests/skills/cases/help-add/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl
@@ -0,0 +1,11 @@
+#Область ОписаниеПеременных
+
+#КонецОбласти
+
+#Область ПрограммныйИнтерфейс
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+#КонецОбласти
\ No newline at end of file
diff --git a/tests/skills/cases/meta-remove/_skill.json b/tests/skills/cases/meta-remove/_skill.json
new file mode 100644
index 00000000..7ff57dcf
--- /dev/null
+++ b/tests/skills/cases/meta-remove/_skill.json
@@ -0,0 +1,12 @@
+{
+ "script": "meta-remove/scripts/meta-remove",
+ "setup": "empty-config",
+ "args": [
+ { "flag": "-ConfigDir", "from": "workDir" },
+ { "flag": "-Object", "from": "case.object" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/meta-remove/basic.json b/tests/skills/cases/meta-remove/basic.json
new file mode 100644
index 00000000..4bc80a70
--- /dev/null
+++ b/tests/skills/cases/meta-remove/basic.json
@@ -0,0 +1,12 @@
+{
+ "name": "Удаление справочника из конфигурации",
+ "preRun": [
+ {
+ "script": "meta-compile/scripts/meta-compile",
+ "input": { "type": "Catalog", "name": "Удалить" },
+ "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
+ }
+ ],
+ "params": { "object": "Catalog.Удалить" },
+ "args_extra": ["-Force"]
+}
diff --git a/tests/skills/cases/meta-remove/snapshots/basic/Configuration.xml b/tests/skills/cases/meta-remove/snapshots/basic/Configuration.xml
new file mode 100644
index 00000000..aedf0d87
--- /dev/null
+++ b/tests/skills/cases/meta-remove/snapshots/basic/Configuration.xml
@@ -0,0 +1,251 @@
+
+
+
+
+
+ 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/meta-remove/snapshots/basic/Languages/Русский.xml b/tests/skills/cases/meta-remove/snapshots/basic/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/meta-remove/snapshots/basic/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/skd-compile/_skill.json b/tests/skills/cases/skd-compile/_skill.json
new file mode 100644
index 00000000..b9ef5a6f
--- /dev/null
+++ b/tests/skills/cases/skd-compile/_skill.json
@@ -0,0 +1,12 @@
+{
+ "script": "skd-compile/scripts/skd-compile",
+ "setup": "none",
+ "args": [
+ { "flag": "-DefinitionFile", "from": "inputFile" },
+ { "flag": "-OutputPath", "from": "workPath", "field": "outputPath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/skd-compile/simple-query.json b/tests/skills/cases/skd-compile/simple-query.json
new file mode 100644
index 00000000..92392f33
--- /dev/null
+++ b/tests/skills/cases/skd-compile/simple-query.json
@@ -0,0 +1,16 @@
+{
+ "name": "Простой запрос",
+ "params": { "outputPath": "Template.xml" },
+ "input": {
+ "dataSets": [
+ {
+ "name": "Основной",
+ "type": "Query",
+ "query": "SELECT 1 AS Поле"
+ }
+ ]
+ },
+ "expect": {
+ "files": ["Template.xml"]
+ }
+}
diff --git a/tests/skills/cases/skd-compile/snapshots/simple-query/Template.xml b/tests/skills/cases/skd-compile/snapshots/simple-query/Template.xml
new file mode 100644
index 00000000..82dd4df3
--- /dev/null
+++ b/tests/skills/cases/skd-compile/snapshots/simple-query/Template.xml
@@ -0,0 +1,40 @@
+
+
+
+ ИсточникДанных1
+ Local
+
+
+ Основной
+ ИсточникДанных1
+ SELECT 1 AS Поле
+
+
+ Основной
+
+
+ ru
+ Основной
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/skills/cases/skd-info/_skill.json b/tests/skills/cases/skd-info/_skill.json
new file mode 100644
index 00000000..77657c34
--- /dev/null
+++ b/tests/skills/cases/skd-info/_skill.json
@@ -0,0 +1,11 @@
+{
+ "script": "skd-info/scripts/skd-info",
+ "setup": "none",
+ "args": [
+ { "flag": "-TemplatePath", "from": "workPath", "field": "templatePath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/skd-info/overview.json b/tests/skills/cases/skd-info/overview.json
new file mode 100644
index 00000000..5370b8ca
--- /dev/null
+++ b/tests/skills/cases/skd-info/overview.json
@@ -0,0 +1,11 @@
+{
+ "name": "Обзор СКД",
+ "preRun": [
+ {
+ "script": "skd-compile/scripts/skd-compile",
+ "input": { "dataSets": [{ "name": "Основной", "type": "Query", "query": "SELECT 1 AS Поле" }] },
+ "args": { "-DefinitionFile": "{inputFile}", "-OutputPath": "{workDir}/Template.xml" }
+ }
+ ],
+ "params": { "templatePath": "Template.xml" }
+}
diff --git a/tests/skills/cases/skd-info/snapshots/overview/Template.xml b/tests/skills/cases/skd-info/snapshots/overview/Template.xml
new file mode 100644
index 00000000..82dd4df3
--- /dev/null
+++ b/tests/skills/cases/skd-info/snapshots/overview/Template.xml
@@ -0,0 +1,40 @@
+
+
+
+ ИсточникДанных1
+ Local
+
+
+ Основной
+ ИсточникДанных1
+ SELECT 1 AS Поле
+
+
+ Основной
+
+
+ ru
+ Основной
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/skills/cases/skd-validate/_skill.json b/tests/skills/cases/skd-validate/_skill.json
new file mode 100644
index 00000000..2c954a48
--- /dev/null
+++ b/tests/skills/cases/skd-validate/_skill.json
@@ -0,0 +1,11 @@
+{
+ "script": "skd-validate/scripts/skd-validate",
+ "setup": "none",
+ "args": [
+ { "flag": "-TemplatePath", "from": "workPath", "field": "templatePath" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/skd-validate/snapshots/valid/Template.xml b/tests/skills/cases/skd-validate/snapshots/valid/Template.xml
new file mode 100644
index 00000000..82dd4df3
--- /dev/null
+++ b/tests/skills/cases/skd-validate/snapshots/valid/Template.xml
@@ -0,0 +1,40 @@
+
+
+
+ ИсточникДанных1
+ Local
+
+
+ Основной
+ ИсточникДанных1
+ SELECT 1 AS Поле
+
+
+ Основной
+
+
+ ru
+ Основной
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/skills/cases/skd-validate/valid.json b/tests/skills/cases/skd-validate/valid.json
new file mode 100644
index 00000000..aa4b4443
--- /dev/null
+++ b/tests/skills/cases/skd-validate/valid.json
@@ -0,0 +1,11 @@
+{
+ "name": "Корректная СКД проходит валидацию",
+ "preRun": [
+ {
+ "script": "skd-compile/scripts/skd-compile",
+ "input": { "dataSets": [{ "name": "Основной", "type": "Query", "query": "SELECT 1 AS Поле" }] },
+ "args": { "-DefinitionFile": "{inputFile}", "-OutputPath": "{workDir}/Template.xml" }
+ }
+ ],
+ "params": { "templatePath": "Template.xml" }
+}
diff --git a/tests/skills/cases/template-add/_skill.json b/tests/skills/cases/template-add/_skill.json
new file mode 100644
index 00000000..adb8838f
--- /dev/null
+++ b/tests/skills/cases/template-add/_skill.json
@@ -0,0 +1,14 @@
+{
+ "script": "template-add/scripts/add-template",
+ "setup": "none",
+ "args": [
+ { "flag": "-ObjectName", "from": "case.objectName" },
+ { "flag": "-TemplateName", "from": "case.templateName" },
+ { "flag": "-TemplateType", "from": "case.templateType" },
+ { "flag": "-SrcDir", "from": "workDir" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/template-add/basic.json b/tests/skills/cases/template-add/basic.json
new file mode 100644
index 00000000..f40a7f9d
--- /dev/null
+++ b/tests/skills/cases/template-add/basic.json
@@ -0,0 +1,10 @@
+{
+ "name": "Добавление макета к обработке",
+ "preRun": [
+ {
+ "script": "epf-init/scripts/init",
+ "args": { "-Name": "МояОбработка", "-SrcDir": "{workDir}" }
+ }
+ ],
+ "params": { "objectName": "МояОбработка", "templateName": "Макет", "templateType": "SpreadsheetDocument" }
+}
diff --git a/tests/skills/cases/template-add/snapshots/basic/МояОбработка.xml b/tests/skills/cases/template-add/snapshots/basic/МояОбработка.xml
new file mode 100644
index 00000000..2d0f8b97
--- /dev/null
+++ b/tests/skills/cases/template-add/snapshots/basic/МояОбработка.xml
@@ -0,0 +1,30 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+
+ МояОбработка
+
+
+ ru
+ МояОбработка
+
+
+
+
+
+
+
+ Макет
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl b/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..15543d27
--- /dev/null
+++ b/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl
@@ -0,0 +1,11 @@
+#Область ОписаниеПеременных
+
+#КонецОбласти
+
+#Область ПрограммныйИнтерфейс
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+#КонецОбласти
\ No newline at end of file
diff --git a/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Templates/Макет.xml b/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Templates/Макет.xml
new file mode 100644
index 00000000..ee341950
--- /dev/null
+++ b/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Templates/Макет.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Макет
+
+
+ ru
+ Макет
+
+
+
+ SpreadsheetDocument
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Templates/Макет/Ext/Template.xml b/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Templates/Макет/Ext/Template.xml
new file mode 100644
index 00000000..fe6c3ab9
--- /dev/null
+++ b/tests/skills/cases/template-add/snapshots/basic/МояОбработка/Templates/Макет/Ext/Template.xml
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/template-remove/_skill.json b/tests/skills/cases/template-remove/_skill.json
new file mode 100644
index 00000000..d32fbf8a
--- /dev/null
+++ b/tests/skills/cases/template-remove/_skill.json
@@ -0,0 +1,13 @@
+{
+ "script": "template-remove/scripts/remove-template",
+ "setup": "none",
+ "args": [
+ { "flag": "-ObjectName", "from": "case.objectName" },
+ { "flag": "-TemplateName", "from": "case.templateName" },
+ { "flag": "-SrcDir", "from": "workDir" }
+ ],
+ "snapshot": {
+ "root": "workDir",
+ "normalizeUuids": true
+ }
+}
diff --git a/tests/skills/cases/template-remove/basic.json b/tests/skills/cases/template-remove/basic.json
new file mode 100644
index 00000000..f77f76a1
--- /dev/null
+++ b/tests/skills/cases/template-remove/basic.json
@@ -0,0 +1,14 @@
+{
+ "name": "Удаление макета из обработки",
+ "preRun": [
+ {
+ "script": "epf-init/scripts/init",
+ "args": { "-Name": "МояОбработка", "-SrcDir": "{workDir}" }
+ },
+ {
+ "script": "template-add/scripts/add-template",
+ "args": { "-ObjectName": "МояОбработка", "-TemplateName": "Макет", "-TemplateType": "SpreadsheetDocument", "-SrcDir": "{workDir}" }
+ }
+ ],
+ "params": { "objectName": "МояОбработка", "templateName": "Макет" }
+}
diff --git a/tests/skills/cases/template-remove/snapshots/basic/МояОбработка.xml b/tests/skills/cases/template-remove/snapshots/basic/МояОбработка.xml
new file mode 100644
index 00000000..42d7fa3a
--- /dev/null
+++ b/tests/skills/cases/template-remove/snapshots/basic/МояОбработка.xml
@@ -0,0 +1,29 @@
+
+
+
+
+
+ UUID-002
+ UUID-003
+
+
+ UUID-004
+ UUID-005
+
+
+
+ МояОбработка
+
+
+ ru
+ МояОбработка
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/template-remove/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl b/tests/skills/cases/template-remove/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..15543d27
--- /dev/null
+++ b/tests/skills/cases/template-remove/snapshots/basic/МояОбработка/Ext/ObjectModule.bsl
@@ -0,0 +1,11 @@
+#Область ОписаниеПеременных
+
+#КонецОбласти
+
+#Область ПрограммныйИнтерфейс
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+#КонецОбласти
\ No newline at end of file