diff --git a/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 b/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 index 387581a8..42033f17 100644 --- a/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 +++ b/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 @@ -1,4 +1,4 @@ -# cfe-borrow v1.18 — Borrow objects from configuration into extension (CFE) (+write_xml_file/write_utf8_bom: общий эталон записи) +# cfe-borrow v1.19 — Borrow objects from configuration into extension (CFE) (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [Parameter(Mandatory)][string]$ExtensionPath, @@ -125,7 +125,7 @@ $childTypeDirMap = @{ "Sequence"="Sequences"; "IntegrationService"="IntegrationServices" "XDTOPackage"="XDTOPackages"; "WebService"="WebServices" "HTTPService"="HTTPServices"; "WSReference"="WSReferences" - "CommonAttribute"="CommonAttributes"; "Style"="Styles" + "CommonAttribute"="CommonAttributes"; "Style"="Styles"; "Bot"="Bots"; "Language"="Languages" } # --- 4b. Russian synonym → English type --- @@ -153,7 +153,7 @@ $synonymMap = @{ $script:typeOrder = @( "Language","Subsystem","StyleItem","Style", "CommonPicture","SessionParameter","Role","CommonTemplate", - "FilterCriterion","CommonModule","CommonAttribute","ExchangePlan", + "FilterCriterion","CommonModule","Bot","CommonAttribute","ExchangePlan", "XDTOPackage","WebService","HTTPService","WSReference", "EventSubscription","ScheduledJob","SettingsStorage","FunctionalOption", "FunctionalOptionsParameter","DefinedType","CommonCommand","CommandGroup", diff --git a/.claude/skills/cfe-borrow/scripts/cfe-borrow.py b/.claude/skills/cfe-borrow/scripts/cfe-borrow.py index 5bfc3312..15928de8 100644 --- a/.claude/skills/cfe-borrow/scripts/cfe-borrow.py +++ b/.claude/skills/cfe-borrow/scripts/cfe-borrow.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# cfe-borrow v1.18 — Borrow objects from configuration into extension (CFE) (+write_xml_file/write_utf8_bom: общий эталон записи) +# cfe-borrow v1.19 — Borrow objects from configuration into extension (CFE) (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills import argparse @@ -80,6 +80,7 @@ CHILD_TYPE_DIR_MAP = { "XDTOPackage": "XDTOPackages", "WebService": "WebServices", "HTTPService": "HTTPServices", "WSReference": "WSReferences", "CommonAttribute": "CommonAttributes", "Style": "Styles", + "Bot": "Bots", "Language": "Languages", } SYNONYM_MAP = { @@ -123,7 +124,7 @@ SYNONYM_MAP = { TYPE_ORDER = [ "Language", "Subsystem", "StyleItem", "Style", "CommonPicture", "SessionParameter", "Role", "CommonTemplate", - "FilterCriterion", "CommonModule", "CommonAttribute", "ExchangePlan", + "FilterCriterion", "CommonModule", "Bot", "CommonAttribute", "ExchangePlan", "XDTOPackage", "WebService", "HTTPService", "WSReference", "EventSubscription", "ScheduledJob", "SettingsStorage", "FunctionalOption", "FunctionalOptionsParameter", "DefinedType", "CommonCommand", "CommandGroup", diff --git a/.claude/skills/cfe-diff/scripts/cfe-diff.ps1 b/.claude/skills/cfe-diff/scripts/cfe-diff.ps1 index 48d19ec1..155c7f42 100644 --- a/.claude/skills/cfe-diff/scripts/cfe-diff.ps1 +++ b/.claude/skills/cfe-diff/scripts/cfe-diff.ps1 @@ -1,4 +1,4 @@ -# cfe-diff v1.0 — Analyze and compare 1C configuration extension (CFE) +# cfe-diff v1.1 — Analyze and compare 1C configuration extension (CFE) (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [Parameter(Mandatory)] @@ -49,7 +49,9 @@ $childTypeDirMap = @{ "SettingsStorage"="SettingsStorages"; "FilterCriterion"="FilterCriteria" "CommandGroup"="CommandGroups"; "DocumentNumerator"="DocumentNumerators" "Sequence"="Sequences"; "IntegrationService"="IntegrationServices" - "CommonAttribute"="CommonAttributes" + "CommonAttribute"="CommonAttributes"; "Style"="Styles"; "XDTOPackage"="XDTOPackages" + "WebService"="WebServices"; "HTTPService"="HTTPServices"; "WSReference"="WSReferences" + "Bot"="Bots" } # --- Parse extension Configuration.xml --- diff --git a/.claude/skills/cfe-diff/scripts/cfe-diff.py b/.claude/skills/cfe-diff/scripts/cfe-diff.py index 3398410a..9af62d93 100644 --- a/.claude/skills/cfe-diff/scripts/cfe-diff.py +++ b/.claude/skills/cfe-diff/scripts/cfe-diff.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# cfe-diff v1.0 — Analyze and compare 1C configuration extension (CFE) +# cfe-diff v1.1 — Analyze and compare 1C configuration extension (CFE) (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills import argparse @@ -60,6 +60,12 @@ CHILD_TYPE_DIR_MAP = { "Sequence": "Sequences", "IntegrationService": "IntegrationServices", "CommonAttribute": "CommonAttributes", + "Style": "Styles", + "XDTOPackage": "XDTOPackages", + "WebService": "WebServices", + "HTTPService": "HTTPServices", + "WSReference": "WSReferences", + "Bot": "Bots", } diff --git a/.claude/skills/cfe-validate/scripts/cfe-validate.ps1 b/.claude/skills/cfe-validate/scripts/cfe-validate.ps1 index 1afbb7dd..9f88a401 100644 --- a/.claude/skills/cfe-validate/scripts/cfe-validate.ps1 +++ b/.claude/skills/cfe-validate/scripts/cfe-validate.ps1 @@ -1,4 +1,4 @@ -# cfe-validate v1.5 — Validate 1C configuration extension structure (CFE) +# cfe-validate v1.6 — Validate 1C configuration extension structure (CFE) (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [Parameter(Mandatory)] @@ -108,7 +108,7 @@ $validClassIds = @( $childObjectTypes = @( "Language","Subsystem","StyleItem","Style", "CommonPicture","SessionParameter","Role","CommonTemplate", - "FilterCriterion","CommonModule","CommonAttribute","ExchangePlan", + "FilterCriterion","CommonModule","Bot","CommonAttribute","ExchangePlan", "XDTOPackage","WebService","HTTPService","WSReference", "EventSubscription","ScheduledJob","SettingsStorage","FunctionalOption", "FunctionalOptionsParameter","DefinedType","CommonCommand","CommandGroup", @@ -122,7 +122,7 @@ $childObjectTypes = @( # Type -> directory mapping $childTypeDirMap = @{ - "Language"="Languages"; "Subsystem"="Subsystems"; "StyleItem"="StyleItems"; "Style"="Styles" + "Language"="Languages"; "Subsystem"="Subsystems"; "StyleItem"="StyleItems"; "Style"="Styles"; "Bot"="Bots" "CommonPicture"="CommonPictures"; "SessionParameter"="SessionParameters"; "Role"="Roles" "CommonTemplate"="CommonTemplates"; "FilterCriterion"="FilterCriteria"; "CommonModule"="CommonModules" "CommonAttribute"="CommonAttributes"; "ExchangePlan"="ExchangePlans"; "XDTOPackage"="XDTOPackages" diff --git a/.claude/skills/cfe-validate/scripts/cfe-validate.py b/.claude/skills/cfe-validate/scripts/cfe-validate.py index ab66c258..e300ebde 100644 --- a/.claude/skills/cfe-validate/scripts/cfe-validate.py +++ b/.claude/skills/cfe-validate/scripts/cfe-validate.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# cfe-validate v1.5 — Validate 1C configuration extension XML structure (CFE) +# cfe-validate v1.6 — Validate 1C configuration extension XML structure (CFE) (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills """Validates extension Configuration.xml: root, InternalInfo, extension properties, ChildObjects, borrowed objects.""" import sys, os, argparse, re @@ -37,7 +37,7 @@ VALID_CLASS_IDS = [ CHILD_OBJECT_TYPES = [ 'Language', 'Subsystem', 'StyleItem', 'Style', 'CommonPicture', 'SessionParameter', 'Role', 'CommonTemplate', - 'FilterCriterion', 'CommonModule', 'CommonAttribute', 'ExchangePlan', + 'FilterCriterion', 'CommonModule', 'Bot', 'CommonAttribute', 'ExchangePlan', 'XDTOPackage', 'WebService', 'HTTPService', 'WSReference', 'EventSubscription', 'ScheduledJob', 'SettingsStorage', 'FunctionalOption', 'FunctionalOptionsParameter', 'DefinedType', 'CommonCommand', 'CommandGroup', @@ -54,6 +54,7 @@ CHILD_TYPE_DIR_MAP = { 'Language': 'Languages', 'Subsystem': 'Subsystems', 'StyleItem': 'StyleItems', 'Style': 'Styles', 'CommonPicture': 'CommonPictures', 'SessionParameter': 'SessionParameters', 'Role': 'Roles', 'CommonTemplate': 'CommonTemplates', 'FilterCriterion': 'FilterCriteria', 'CommonModule': 'CommonModules', + 'Bot': 'Bots', 'CommonAttribute': 'CommonAttributes', 'ExchangePlan': 'ExchangePlans', 'XDTOPackage': 'XDTOPackages', 'WebService': 'WebServices', 'HTTPService': 'HTTPServices', 'WSReference': 'WSReferences', 'EventSubscription': 'EventSubscriptions', 'ScheduledJob': 'ScheduledJobs', diff --git a/.claude/skills/subsystem-compile/scripts/subsystem-compile.ps1 b/.claude/skills/subsystem-compile/scripts/subsystem-compile.ps1 index 053210c1..4b514610 100644 --- a/.claude/skills/subsystem-compile/scripts/subsystem-compile.ps1 +++ b/.claude/skills/subsystem-compile/scripts/subsystem-compile.ps1 @@ -1,4 +1,4 @@ -# subsystem-compile v1.22 — Create 1C subsystem from JSON definition (+write_xml_file/write_utf8_bom: общий эталон записи) +# subsystem-compile v1.23 — Create 1C subsystem from JSON definition (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [string]$DefinitionFile, @@ -294,6 +294,8 @@ $script:contentTypeMap = @{ "Subsystems" = "Subsystem" "StyleItems" = "StyleItem" "IntegrationServices" = "IntegrationService" + "Bots" = "Bot" + "Bot" = "Bot" # Russian singular → English "Справочник" = "Catalog" "Каталог" = "Catalog" diff --git a/.claude/skills/subsystem-compile/scripts/subsystem-compile.py b/.claude/skills/subsystem-compile/scripts/subsystem-compile.py index 36c3e0e1..8902e679 100644 --- a/.claude/skills/subsystem-compile/scripts/subsystem-compile.py +++ b/.claude/skills/subsystem-compile/scripts/subsystem-compile.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# subsystem-compile v1.22 — Create 1C subsystem from JSON definition (+write_xml_file/write_utf8_bom: общий эталон записи) +# subsystem-compile v1.23 — Create 1C subsystem from JSON definition (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills import argparse import json @@ -399,6 +399,7 @@ def main(): 'DefinedTypes': 'DefinedType', 'DocumentNumerators': 'DocumentNumerator', 'Sequences': 'Sequence', 'Subsystems': 'Subsystem', 'StyleItems': 'StyleItem', 'IntegrationServices': 'IntegrationService', + 'Bots': 'Bot', 'Bot': 'Bot', # Russian singular → English 'Справочник': 'Catalog', 'Каталог': 'Catalog', 'Документ': 'Document', 'Перечисление': 'Enum', 'Константа': 'Constant', diff --git a/.claude/skills/subsystem-edit/scripts/subsystem-edit.ps1 b/.claude/skills/subsystem-edit/scripts/subsystem-edit.ps1 index 345dac9e..015bda01 100644 --- a/.claude/skills/subsystem-edit/scripts/subsystem-edit.ps1 +++ b/.claude/skills/subsystem-edit/scripts/subsystem-edit.ps1 @@ -1,4 +1,4 @@ -# subsystem-edit v1.17 — Edit existing 1C subsystem XML (+write_xml_file/write_utf8_bom: общий эталон записи) +# subsystem-edit v1.18 — Edit existing 1C subsystem XML (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills param( [Parameter(Mandatory)][Alias('Path')][string]$SubsystemPath, @@ -34,7 +34,7 @@ $script:contentTypeMap = @{ "FunctionalOptionsParameters"="FunctionalOptionsParameter" "DefinedTypes"="DefinedType"; "DocumentNumerators"="DocumentNumerator" "Sequences"="Sequence"; "Subsystems"="Subsystem" - "StyleItems"="StyleItem"; "IntegrationServices"="IntegrationService" + "StyleItems"="StyleItem"; "IntegrationServices"="IntegrationService"; "Bots"="Bot"; "Bot"="Bot" # Russian singular "Справочник"="Catalog"; "Каталог"="Catalog"; "Документ"="Document" "Перечисление"="Enum"; "Константа"="Constant" diff --git a/.claude/skills/subsystem-edit/scripts/subsystem-edit.py b/.claude/skills/subsystem-edit/scripts/subsystem-edit.py index bcfc42f6..b6fbd1ef 100644 --- a/.claude/skills/subsystem-edit/scripts/subsystem-edit.py +++ b/.claude/skills/subsystem-edit/scripts/subsystem-edit.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# subsystem-edit v1.17 — Edit existing 1C subsystem XML (+write_xml_file/write_utf8_bom: общий эталон записи) +# subsystem-edit v1.18 — Edit existing 1C subsystem XML (+тип Bot; cfe-diff/cfe-borrow: недостающие типы) # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills import argparse @@ -310,6 +310,7 @@ CONTENT_TYPE_MAP = { 'DefinedTypes': 'DefinedType', 'DocumentNumerators': 'DocumentNumerator', 'Sequences': 'Sequence', 'Subsystems': 'Subsystem', 'StyleItems': 'StyleItem', 'IntegrationServices': 'IntegrationService', + 'Bots': 'Bot', 'Bot': 'Bot', # Russian singular 'Справочник': 'Catalog', 'Каталог': 'Catalog', 'Документ': 'Document', 'Перечисление': 'Enum', 'Константа': 'Constant', diff --git a/tests/skills/cases/cfe-diff/own-service-objects.json b/tests/skills/cases/cfe-diff/own-service-objects.json new file mode 100644 index 00000000..881c6d65 --- /dev/null +++ b/tests/skills/cases/cfe-diff/own-service-objects.json @@ -0,0 +1,41 @@ +{ + "name": "Собственные XDTO-пакет и HTTP-сервис расширения попадают в обзор", + "preRun": [ + { + "script": "cfe-init/scripts/cfe-init", + "args": { + "-Name": "Сервисы", + "-OutputDir": "{workDir}/ext", + "-ConfigPath": "{workDir}" + } + }, + { + "script": "meta-compile/scripts/meta-compile", + "input": { + "type": "HTTPService", + "name": "Сервисы_API", + "rootURL": "api", + "urlTemplates": { "Health": "/health" } + }, + "args": { + "-JsonPath": "{inputFile}", + "-OutputDir": "{workDir}/ext" + } + }, + { + "script": "xdto-compile/scripts/xdto-compile", + "args": { + "-Xsd": "", + "-Name": "Сервисы_Пакет", + "-OutputDir": "{workDir}/ext" + } + } + ], + "params": { + "extensionPath": "ext" + }, + "expect": { + "stdoutContains": ["HTTPService.Сервисы_API", "XDTOPackage.Сервисы_Пакет"], + "stdoutNotContains": ["unknown type"] + } +} diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Configuration.xml b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Configuration.xml new file mode 100644 index 00000000..2ed58586 --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/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 + TaxiEnableVersion8_2 + DontUse + Version8_3_24 + + + + Русский + + + \ No newline at end of file diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/ClientApplicationInterface.xml b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/ClientApplicationInterface.xml new file mode 100644 index 00000000..3c1161b2 --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/ClientApplicationInterface.xml @@ -0,0 +1,18 @@ + + + + + UUID-002 + + + + + UUID-004 + + + + + + + + \ No newline at end of file diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Configuration.xml b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Configuration.xml new file mode 100644 index 00000000..1a6c9629 --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Configuration.xml @@ -0,0 +1,73 @@ + + + + + + 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 + + + + Adopted + Сервисы + + + ru + Сервисы + + + + Customization + true + Сервисы_ + Version8_3_24 + ManagedApplication + + PlatformApplication + + Russian + + Role.Сервисы_ОсновнаяРоль + + + + Language.Русский + + + + + + TaxiEnableVersion8_2 + + + Русский + Сервисы_ОсновнаяРоль + Сервисы_API + Сервисы_Пакет + + + \ No newline at end of file diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/HTTPServices/Сервисы_API.xml b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/HTTPServices/Сервисы_API.xml new file mode 100644 index 00000000..00d0a56d --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/HTTPServices/Сервисы_API.xml @@ -0,0 +1,34 @@ + + + + + Сервисы_API + + + ru + Сервисы_API + + + + api + DontUse + 20 + + + + + Health + + + ru + Health + + + + + + + + + + \ No newline at end of file diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/HTTPServices/Сервисы_API/Ext/Module.bsl b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/HTTPServices/Сервисы_API/Ext/Module.bsl new file mode 100644 index 00000000..e69de29b diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Languages/Русский.xml b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Languages/Русский.xml new file mode 100644 index 00000000..c21624f5 --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Languages/Русский.xml @@ -0,0 +1,13 @@ + + + + + + Adopted + Русский + + UUID-002 + ru + + + \ No newline at end of file diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Roles/Сервисы_ОсновнаяРоль.xml b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Roles/Сервисы_ОсновнаяРоль.xml new file mode 100644 index 00000000..56dcbb72 --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/Roles/Сервисы_ОсновнаяРоль.xml @@ -0,0 +1,10 @@ + + + + + Сервисы_ОсновнаяРоль + + + + + \ No newline at end of file diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/XDTOPackages/Сервисы_Пакет.xml b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/XDTOPackages/Сервисы_Пакет.xml new file mode 100644 index 00000000..b90498ec --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/XDTOPackages/Сервисы_Пакет.xml @@ -0,0 +1,16 @@ + + + + + Сервисы_Пакет + + + ru + Сервисы_Пакет + + + + http://example.org/probe + + + \ No newline at end of file diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/XDTOPackages/Сервисы_Пакет/Ext/Package.bin b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/XDTOPackages/Сервисы_Пакет/Ext/Package.bin new file mode 100644 index 00000000..c0e98cd0 --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Ext/XDTOPackages/Сервисы_Пакет/Ext/Package.bin @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Languages/Русский.xml b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Languages/Русский.xml new file mode 100644 index 00000000..37c60d78 --- /dev/null +++ b/tests/skills/cases/cfe-diff/snapshots/own-service-objects/Languages/Русский.xml @@ -0,0 +1,16 @@ + + + + + Русский + + + ru + Русский + + + + ru + + + \ No newline at end of file