diff --git a/tests/skills/cases/cf-edit/fixtures/lf-config/Configuration.xml b/tests/skills/cases/cf-edit/fixtures/lf-config/Configuration.xml
new file mode 100644
index 00000000..ec192299
--- /dev/null
+++ b/tests/skills/cases/cf-edit/fixtures/lf-config/Configuration.xml
@@ -0,0 +1,251 @@
+
+
+
+
+
+ 9cd510cd-abfc-11d4-9434-004095e12fc7
+ d41d3bac-c6c1-4a8d-afcd-81fc29f496d0
+
+
+ 9fcd25a0-4822-11d4-9414-008048da11f9
+ c8e78ba2-51c5-45bb-a0ef-8c3c7ff76053
+
+
+ e3687481-0a87-462c-a166-9f34594f9bba
+ 342f337b-45a8-422b-965d-11330d52b334
+
+
+ 9de14907-ec23-4a07-96f0-85521cb6b53b
+ a3448b91-cbda-4e31-a0f2-e32bc1884e7c
+
+
+ 51f2d5d8-ea4d-4064-8892-82951750031e
+ 41d207a0-776a-40af-bcd1-925d3acffb82
+
+
+ e68182ea-4237-4383-967f-90c1e3370bc7
+ d73b5446-4f92-46db-a779-91d4e78c664a
+
+
+ fb282519-d103-4dd3-bc12-cb271d631dfc
+ c5472dbb-d2be-4f93-a745-564e39298ef2
+
+
+
+ КрлфКонф
+
+
+ ru
+ КрлфКонф
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/cf-edit/fixtures/lf-config/Ext/ClientApplicationInterface.xml b/tests/skills/cases/cf-edit/fixtures/lf-config/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..b6691f68
--- /dev/null
+++ b/tests/skills/cases/cf-edit/fixtures/lf-config/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ cbab57f2-a0f3-4f0a-89ea-4cb19570ab75
+
+
+
+
+ b553047f-c9aa-4157-978d-448ecad24248
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/cf-edit/fixtures/lf-config/Languages/Русский.xml b/tests/skills/cases/cf-edit/fixtures/lf-config/Languages/Русский.xml
new file mode 100644
index 00000000..1ad6b469
--- /dev/null
+++ b/tests/skills/cases/cf-edit/fixtures/lf-config/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/cf-edit/roundtrip-lf-preserve.json b/tests/skills/cases/cf-edit/roundtrip-lf-preserve.json
new file mode 100644
index 00000000..9c7971e8
--- /dev/null
+++ b/tests/skills/cases/cf-edit/roundtrip-lf-preserve.json
@@ -0,0 +1,19 @@
+{
+ "name": "round-trip: modify-property на LF-исходнике сохраняет LF (порты расходились здесь: PS форсировал CRLF)",
+ "setup": "fixture:lf-config",
+ "input": [
+ { "operation": "modify-property", "value": "Version=1.0.0.2" }
+ ],
+ "expect": {
+ "preserves": {
+ "file": "Configuration.xml",
+ "bom": true,
+ "eol": "lf",
+ "encoding": "UTF-8",
+ "finalNewline": false,
+ "noCR13": true,
+ "selfClose": "tight",
+ "noEmptyPairs": true
+ }
+ }
+}
diff --git a/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/Configuration.xml b/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/Configuration.xml
new file mode 100644
index 00000000..18132008
--- /dev/null
+++ b/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/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
+
+
+
+ КрлфКонф
+
+
+ ru
+ КрлфКонф
+
+
+
+
+ Version8_3_27
+ ManagedApplication
+
+ PlatformApplication
+
+ Russian
+
+
+ 1.0.0.2
+
+ 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_27
+
+
+
+ Русский
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml b/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..3c1161b2
--- /dev/null
+++ b/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ UUID-002
+
+
+
+
+ UUID-004
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml b/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/cf-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-compile/fixtures/lf-config/Configuration.xml b/tests/skills/cases/meta-compile/fixtures/lf-config/Configuration.xml
new file mode 100644
index 00000000..ec192299
--- /dev/null
+++ b/tests/skills/cases/meta-compile/fixtures/lf-config/Configuration.xml
@@ -0,0 +1,251 @@
+
+
+
+
+
+ 9cd510cd-abfc-11d4-9434-004095e12fc7
+ d41d3bac-c6c1-4a8d-afcd-81fc29f496d0
+
+
+ 9fcd25a0-4822-11d4-9414-008048da11f9
+ c8e78ba2-51c5-45bb-a0ef-8c3c7ff76053
+
+
+ e3687481-0a87-462c-a166-9f34594f9bba
+ 342f337b-45a8-422b-965d-11330d52b334
+
+
+ 9de14907-ec23-4a07-96f0-85521cb6b53b
+ a3448b91-cbda-4e31-a0f2-e32bc1884e7c
+
+
+ 51f2d5d8-ea4d-4064-8892-82951750031e
+ 41d207a0-776a-40af-bcd1-925d3acffb82
+
+
+ e68182ea-4237-4383-967f-90c1e3370bc7
+ d73b5446-4f92-46db-a779-91d4e78c664a
+
+
+ fb282519-d103-4dd3-bc12-cb271d631dfc
+ c5472dbb-d2be-4f93-a745-564e39298ef2
+
+
+
+ КрлфКонф
+
+
+ ru
+ КрлфКонф
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml b/tests/skills/cases/meta-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..b6691f68
--- /dev/null
+++ b/tests/skills/cases/meta-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ cbab57f2-a0f3-4f0a-89ea-4cb19570ab75
+
+
+
+
+ b553047f-c9aa-4157-978d-448ecad24248
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-compile/fixtures/lf-config/Languages/Русский.xml b/tests/skills/cases/meta-compile/fixtures/lf-config/Languages/Русский.xml
new file mode 100644
index 00000000..1ad6b469
--- /dev/null
+++ b/tests/skills/cases/meta-compile/fixtures/lf-config/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-compile/roundtrip-lf-preserve.json b/tests/skills/cases/meta-compile/roundtrip-lf-preserve.json
new file mode 100644
index 00000000..83e92d14
--- /dev/null
+++ b/tests/skills/cases/meta-compile/roundtrip-lf-preserve.json
@@ -0,0 +1,28 @@
+{
+ "name": "регистрация в LF-ном Configuration.xml: правка наследует LF, создаваемый объект — канон CRLF",
+ "setup": "fixture:lf-config",
+ "input": { "type": "Catalog", "name": "А" },
+ "validatePath": "Catalogs/А",
+ "expect": {
+ "preserves": [
+ {
+ "file": "Configuration.xml",
+ "bom": true,
+ "eol": "lf",
+ "encoding": "UTF-8",
+ "finalNewline": false,
+ "noCR13": true
+ },
+ {
+ "file": "Catalogs/А.xml",
+ "bom": true,
+ "eol": "crlf",
+ "encoding": "UTF-8",
+ "finalNewline": false,
+ "noCR13": true,
+ "selfClose": "tight",
+ "noEmptyPairs": true
+ }
+ ]
+ }
+}
diff --git a/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Catalogs/А.xml b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Catalogs/А.xml
new file mode 100644
index 00000000..204fc84d
--- /dev/null
+++ b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Catalogs/А.xml
@@ -0,0 +1,91 @@
+
+
+
+
+
+ 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
+
+ Auto
+ InDialog
+ false
+ BothWays
+
+ Catalog.А.StandardAttribute.Description
+ Catalog.А.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Managed
+ Use
+
+
+
+
+
+ Use
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Catalogs/А/Ext/ObjectModule.bsl b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Catalogs/А/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Configuration.xml b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Configuration.xml
new file mode 100644
index 00000000..86807003
--- /dev/null
+++ b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/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
+
+
+
+ КрлфКонф
+
+
+ ru
+ КрлфКонф
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+ А
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..3c1161b2
--- /dev/null
+++ b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ UUID-002
+
+
+
+
+ UUID-004
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/meta-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-edit/fixtures/lf-catalog/Catalogs/КрлфСпр.xml b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Catalogs/КрлфСпр.xml
new file mode 100644
index 00000000..27aeb4c3
--- /dev/null
+++ b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Catalogs/КрлфСпр.xml
@@ -0,0 +1,136 @@
+
+
+
+
+
+ 385dd09c-ff5b-40a9-943e-38f475c99b91
+ 86b48a10-bde9-4ecc-856c-e25ce31a5b4b
+
+
+ 8993478d-375a-453b-b8f9-bba39e975083
+ 5b0b0523-ecbc-499a-9b22-fea054be03e7
+
+
+ d55fc5b7-1aa2-4ce1-ad1d-d2b770e38655
+ 9bf0c8c8-4881-49e8-a62f-f482ebd42d66
+
+
+ ee9cced9-3790-4bd1-8f30-da4c747eb2df
+ a4530e53-72f7-4d6c-861d-bee708f2cd9a
+
+
+ 2ec45d37-0f33-4baf-8fa7-28003c959f8c
+ f6bd4075-e78b-4ca9-88f4-13b4efcf3225
+
+
+
+ КрлфСпр
+
+
+ ru
+ КРЛФ спр
+
+
+
+ false
+ HierarchyFoldersAndItems
+ false
+ 2
+ true
+ true
+
+ ToItems
+ 9
+ 25
+ String
+ Variable
+ WholeCatalog
+ false
+ true
+ AsDescription
+
+ Auto
+ InDialog
+ false
+ BothWays
+
+ Catalog.КрлфСпр.StandardAttribute.Description
+ Catalog.КрлфСпр.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Managed
+ Use
+
+
+
+
+
+ Use
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
+ База
+
+
+ ru
+ База
+
+
+
+
+ xs:string
+
+ 10
+ Variable
+
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ false
+
+ DontCheck
+ Items
+
+
+ Auto
+ Auto
+
+
+ Auto
+
+ DontIndex
+ Use
+ Use
+
+
+
+
+
diff --git a/tests/skills/cases/meta-edit/fixtures/lf-catalog/Catalogs/КрлфСпр/Ext/ObjectModule.bsl b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Catalogs/КрлфСпр/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..5f282702
--- /dev/null
+++ b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Catalogs/КрлфСпр/Ext/ObjectModule.bsl
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-edit/fixtures/lf-catalog/Configuration.xml b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Configuration.xml
new file mode 100644
index 00000000..e63d4adb
--- /dev/null
+++ b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Configuration.xml
@@ -0,0 +1,252 @@
+
+
+
+
+
+ 9cd510cd-abfc-11d4-9434-004095e12fc7
+ d89cc1d9-05a5-4cf0-9e80-5346137b1348
+
+
+ 9fcd25a0-4822-11d4-9414-008048da11f9
+ 9118e89e-788f-4d02-b85d-655cfe7dc3ae
+
+
+ e3687481-0a87-462c-a166-9f34594f9bba
+ 651a9a19-7e3e-48cc-b8db-b3dee0cd8c96
+
+
+ 9de14907-ec23-4a07-96f0-85521cb6b53b
+ 55ce5471-7a5f-4096-9f77-28ddaf35af44
+
+
+ 51f2d5d8-ea4d-4064-8892-82951750031e
+ b31abffa-ac94-494b-b8f6-80fcea916b76
+
+
+ e68182ea-4237-4383-967f-90c1e3370bc7
+ 2029b0cf-47d7-4670-9678-da1cb439fac2
+
+
+ fb282519-d103-4dd3-bc12-cb271d631dfc
+ 015ce36a-7802-4869-83a6-4bf96066a5b2
+
+
+
+ КонфM
+
+
+ ru
+ КонфM
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+ КрлфСпр
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-edit/fixtures/lf-catalog/Ext/ClientApplicationInterface.xml b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..ff3ba1ab
--- /dev/null
+++ b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ cbab57f2-a0f3-4f0a-89ea-4cb19570ab75
+
+
+
+
+ b553047f-c9aa-4157-978d-448ecad24248
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-edit/fixtures/lf-catalog/Languages/Русский.xml b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Languages/Русский.xml
new file mode 100644
index 00000000..f8b91e59
--- /dev/null
+++ b/tests/skills/cases/meta-edit/fixtures/lf-catalog/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-edit/roundtrip-lf-preserve.json b/tests/skills/cases/meta-edit/roundtrip-lf-preserve.json
new file mode 100644
index 00000000..510b8a98
--- /dev/null
+++ b/tests/skills/cases/meta-edit/roundtrip-lf-preserve.json
@@ -0,0 +1,18 @@
+{
+ "name": "round-trip: add-attribute на LF-исходнике сохраняет LF (порты расходились здесь: PS форсировал CRLF)",
+ "setup": "fixture:lf-catalog",
+ "params": { "objectPath": "Catalogs/КрлфСпр.xml" },
+ "input": { "add": { "attributes": ["Новый: Boolean"] } },
+ "expect": {
+ "preserves": {
+ "file": "Catalogs/КрлфСпр.xml",
+ "bom": true,
+ "eol": "lf",
+ "encoding": "UTF-8",
+ "finalNewline": true,
+ "noCR13": true,
+ "selfClose": "tight",
+ "noEmptyPairs": true
+ }
+ }
+}
diff --git a/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Catalogs/КрлфСпр.xml b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Catalogs/КрлфСпр.xml
new file mode 100644
index 00000000..7db44ef8
--- /dev/null
+++ b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Catalogs/КрлфСпр.xml
@@ -0,0 +1,176 @@
+
+
+
+
+
+ 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
+
+ Auto
+ InDialog
+ false
+ BothWays
+
+ Catalog.КрлфСпр.StandardAttribute.Description
+ Catalog.КрлфСпр.StandardAttribute.Code
+
+ Begin
+ DontUse
+ Directly
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ Managed
+ Use
+
+
+
+
+
+ Use
+ Auto
+ DontUse
+ false
+ false
+
+
+
+
+ База
+
+
+ ru
+ База
+
+
+
+
+ xs:string
+
+ 10
+ Variable
+
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ false
+
+ DontCheck
+ Items
+
+
+ Auto
+ Auto
+
+
+ Auto
+
+ DontIndex
+ Use
+ Use
+
+
+
+
+ Новый
+
+
+ ru
+ Новый
+
+
+
+
+ xs:boolean
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ false
+ false
+ DontCheck
+ Items
+
+
+ Auto
+ Auto
+
+
+ Auto
+
+ DontIndex
+ Use
+ Use
+
+
+
+
+
diff --git a/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Catalogs/КрлфСпр/Ext/ObjectModule.bsl b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Catalogs/КрлфСпр/Ext/ObjectModule.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Configuration.xml b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Configuration.xml
new file mode 100644
index 00000000..ee88a27c
--- /dev/null
+++ b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/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
+
+
+
+ КонфM
+
+
+ ru
+ КонфM
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+ КрлфСпр
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..3c1161b2
--- /dev/null
+++ b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ UUID-002
+
+
+
+
+ UUID-004
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/meta-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/fixtures/lf-config/Configuration.xml b/tests/skills/cases/role-compile/fixtures/lf-config/Configuration.xml
new file mode 100644
index 00000000..ec192299
--- /dev/null
+++ b/tests/skills/cases/role-compile/fixtures/lf-config/Configuration.xml
@@ -0,0 +1,251 @@
+
+
+
+
+
+ 9cd510cd-abfc-11d4-9434-004095e12fc7
+ d41d3bac-c6c1-4a8d-afcd-81fc29f496d0
+
+
+ 9fcd25a0-4822-11d4-9414-008048da11f9
+ c8e78ba2-51c5-45bb-a0ef-8c3c7ff76053
+
+
+ e3687481-0a87-462c-a166-9f34594f9bba
+ 342f337b-45a8-422b-965d-11330d52b334
+
+
+ 9de14907-ec23-4a07-96f0-85521cb6b53b
+ a3448b91-cbda-4e31-a0f2-e32bc1884e7c
+
+
+ 51f2d5d8-ea4d-4064-8892-82951750031e
+ 41d207a0-776a-40af-bcd1-925d3acffb82
+
+
+ e68182ea-4237-4383-967f-90c1e3370bc7
+ d73b5446-4f92-46db-a779-91d4e78c664a
+
+
+ fb282519-d103-4dd3-bc12-cb271d631dfc
+ c5472dbb-d2be-4f93-a745-564e39298ef2
+
+
+
+ КрлфКонф
+
+
+ ru
+ КрлфКонф
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml b/tests/skills/cases/role-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..b6691f68
--- /dev/null
+++ b/tests/skills/cases/role-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ cbab57f2-a0f3-4f0a-89ea-4cb19570ab75
+
+
+
+
+ b553047f-c9aa-4157-978d-448ecad24248
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/fixtures/lf-config/Languages/Русский.xml b/tests/skills/cases/role-compile/fixtures/lf-config/Languages/Русский.xml
new file mode 100644
index 00000000..1ad6b469
--- /dev/null
+++ b/tests/skills/cases/role-compile/fixtures/lf-config/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/roundtrip-lf-preserve.json b/tests/skills/cases/role-compile/roundtrip-lf-preserve.json
new file mode 100644
index 00000000..5aa05597
--- /dev/null
+++ b/tests/skills/cases/role-compile/roundtrip-lf-preserve.json
@@ -0,0 +1,32 @@
+{
+ "name": "регистрация в LF-ном Configuration.xml: правка наследует LF, создаваемая роль — канон CRLF",
+ "setup": "fixture:lf-config",
+ "input": { "name": "Пустая" },
+ "validatePath": "Roles/Пустая",
+ "expect": {
+ "files": [
+ "Roles/Пустая.xml",
+ "Roles/Пустая/Ext/Rights.xml"
+ ],
+ "preserves": [
+ {
+ "file": "Configuration.xml",
+ "bom": true,
+ "eol": "lf",
+ "encoding": "UTF-8",
+ "finalNewline": false,
+ "noCR13": true
+ },
+ {
+ "file": "Roles/Пустая.xml",
+ "bom": true,
+ "eol": "crlf",
+ "encoding": "UTF-8",
+ "finalNewline": false,
+ "noCR13": true,
+ "selfClose": "tight",
+ "noEmptyPairs": true
+ }
+ ]
+ }
+}
diff --git a/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Configuration.xml b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Configuration.xml
new file mode 100644
index 00000000..2ada7362
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/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
+
+
+
+ КрлфКонф
+
+
+ ru
+ КрлфКонф
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+ Пустая
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..3c1161b2
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ UUID-002
+
+
+
+
+ UUID-004
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Roles/Пустая.xml b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Roles/Пустая.xml
new file mode 100644
index 00000000..6b4355f9
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Roles/Пустая.xml
@@ -0,0 +1,32 @@
+
+
+
+
+ Пустая
+
+
+ ru
+ Пустая
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Roles/Пустая/Ext/Rights.xml b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Roles/Пустая/Ext/Rights.xml
new file mode 100644
index 00000000..c79756f9
--- /dev/null
+++ b/tests/skills/cases/role-compile/snapshots/roundtrip-lf-preserve/Roles/Пустая/Ext/Rights.xml
@@ -0,0 +1,9 @@
+
+
+ false
+ true
+ false
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/Второй.xml b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/Второй.xml
new file mode 100644
index 00000000..3c8097e8
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/Второй.xml
@@ -0,0 +1,23 @@
+
+
+
+
+ Второй
+
+
+ ru
+ Второй
+
+
+
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ DontUse
+
+
+
diff --git a/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/Второй/Ext/Module.bsl b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/Второй/Ext/Module.bsl
new file mode 100644
index 00000000..5f282702
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/Второй/Ext/Module.bsl
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/М.xml b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/М.xml
new file mode 100644
index 00000000..b5e3d0c9
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/М.xml
@@ -0,0 +1,23 @@
+
+
+
+
+ М
+
+
+ ru
+ М
+
+
+
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ DontUse
+
+
+
diff --git a/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/М/Ext/Module.bsl b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/М/Ext/Module.bsl
new file mode 100644
index 00000000..5f282702
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/CommonModules/М/Ext/Module.bsl
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Configuration.xml b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Configuration.xml
new file mode 100644
index 00000000..b1022249
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Configuration.xml
@@ -0,0 +1,254 @@
+
+
+
+
+
+ 9cd510cd-abfc-11d4-9434-004095e12fc7
+ 5a5b12bf-6195-4ec6-9345-74ac5d4a51e9
+
+
+ 9fcd25a0-4822-11d4-9414-008048da11f9
+ d63f4369-8cd6-48a9-9eb2-d59ee96c1cd7
+
+
+ e3687481-0a87-462c-a166-9f34594f9bba
+ e056dc64-9149-4384-9d91-1bc0006f3b0a
+
+
+ 9de14907-ec23-4a07-96f0-85521cb6b53b
+ 400759d9-9144-4b60-a73b-6d4d54f8e608
+
+
+ 51f2d5d8-ea4d-4064-8892-82951750031e
+ 5443c8e3-afcc-4853-8b92-7a211d728c9f
+
+
+ e68182ea-4237-4383-967f-90c1e3370bc7
+ 8bdc6930-957c-456e-847f-d2126faa50ea
+
+
+ fb282519-d103-4dd3-bc12-cb271d631dfc
+ 3c5dc348-1768-4268-99d7-bae149d144c8
+
+
+
+ КонфS
+
+
+ ru
+ КонфS
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+ М
+ Второй
+ КрлфПС
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Ext/ClientApplicationInterface.xml b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..4b374972
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ cbab57f2-a0f3-4f0a-89ea-4cb19570ab75
+
+
+
+
+ b553047f-c9aa-4157-978d-448ecad24248
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Languages/Русский.xml b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Languages/Русский.xml
new file mode 100644
index 00000000..f642cb52
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Subsystems/КрлфПС.xml b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Subsystems/КрлфПС.xml
new file mode 100644
index 00000000..b9fe520f
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/fixtures/lf-subsystem/Subsystems/КрлфПС.xml
@@ -0,0 +1,24 @@
+
+
+
+
+ КрлфПС
+
+
+ ru
+ КРЛФ ПС
+
+
+
+ true
+ true
+ false
+
+
+
+ CommonModule.М
+
+
+
+
+
diff --git a/tests/skills/cases/subsystem-edit/roundtrip-lf-preserve.json b/tests/skills/cases/subsystem-edit/roundtrip-lf-preserve.json
new file mode 100644
index 00000000..9ddde527
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/roundtrip-lf-preserve.json
@@ -0,0 +1,20 @@
+{
+ "name": "round-trip: add-content на LF-исходнике сохраняет LF (порты расходились здесь: PS форсировал CRLF)",
+ "setup": "fixture:lf-subsystem",
+ "params": { "subsystemPath": "Subsystems/КрлфПС.xml" },
+ "input": [
+ { "operation": "add-content", "value": "CommonModule.Второй" }
+ ],
+ "expect": {
+ "preserves": {
+ "file": "Subsystems/КрлфПС.xml",
+ "bom": true,
+ "eol": "lf",
+ "encoding": "UTF-8",
+ "finalNewline": true,
+ "noCR13": true,
+ "selfClose": "tight",
+ "noEmptyPairs": true
+ }
+ }
+}
diff --git a/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/Второй.xml b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/Второй.xml
new file mode 100644
index 00000000..75f092c0
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/Второй.xml
@@ -0,0 +1,23 @@
+
+
+
+
+ Второй
+
+
+ ru
+ Второй
+
+
+
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ DontUse
+
+
+
diff --git a/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/Второй/Ext/Module.bsl b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/Второй/Ext/Module.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/М.xml b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/М.xml
new file mode 100644
index 00000000..9f82c07f
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/М.xml
@@ -0,0 +1,23 @@
+
+
+
+
+ М
+
+
+ ru
+ М
+
+
+
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ DontUse
+
+
+
diff --git a/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/М/Ext/Module.bsl b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/CommonModules/М/Ext/Module.bsl
new file mode 100644
index 00000000..e69de29b
diff --git a/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Configuration.xml b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Configuration.xml
new file mode 100644
index 00000000..7d6b7b98
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Configuration.xml
@@ -0,0 +1,254 @@
+
+
+
+
+
+ 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
+
+
+
+ КонфS
+
+
+ ru
+ КонфS
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+ М
+ Второй
+ КрлфПС
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..3c1161b2
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ UUID-002
+
+
+
+
+ UUID-004
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Subsystems/КрлфПС.xml b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Subsystems/КрлфПС.xml
new file mode 100644
index 00000000..998806ce
--- /dev/null
+++ b/tests/skills/cases/subsystem-edit/snapshots/roundtrip-lf-preserve/Subsystems/КрлфПС.xml
@@ -0,0 +1,25 @@
+
+
+
+
+ КрлфПС
+
+
+ ru
+ КРЛФ ПС
+
+
+
+ true
+ true
+ false
+
+
+
+ CommonModule.М
+ CommonModule.Второй
+
+
+
+
+
diff --git a/tests/skills/cases/xdto-compile/fixtures/lf-config/Configuration.xml b/tests/skills/cases/xdto-compile/fixtures/lf-config/Configuration.xml
new file mode 100644
index 00000000..ec192299
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/fixtures/lf-config/Configuration.xml
@@ -0,0 +1,251 @@
+
+
+
+
+
+ 9cd510cd-abfc-11d4-9434-004095e12fc7
+ d41d3bac-c6c1-4a8d-afcd-81fc29f496d0
+
+
+ 9fcd25a0-4822-11d4-9414-008048da11f9
+ c8e78ba2-51c5-45bb-a0ef-8c3c7ff76053
+
+
+ e3687481-0a87-462c-a166-9f34594f9bba
+ 342f337b-45a8-422b-965d-11330d52b334
+
+
+ 9de14907-ec23-4a07-96f0-85521cb6b53b
+ a3448b91-cbda-4e31-a0f2-e32bc1884e7c
+
+
+ 51f2d5d8-ea4d-4064-8892-82951750031e
+ 41d207a0-776a-40af-bcd1-925d3acffb82
+
+
+ e68182ea-4237-4383-967f-90c1e3370bc7
+ d73b5446-4f92-46db-a779-91d4e78c664a
+
+
+ fb282519-d103-4dd3-bc12-cb271d631dfc
+ c5472dbb-d2be-4f93-a745-564e39298ef2
+
+
+
+ КрлфКонф
+
+
+ ru
+ КрлфКонф
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/xdto-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml b/tests/skills/cases/xdto-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..b6691f68
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/fixtures/lf-config/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ cbab57f2-a0f3-4f0a-89ea-4cb19570ab75
+
+
+
+
+ b553047f-c9aa-4157-978d-448ecad24248
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/xdto-compile/fixtures/lf-config/Languages/Русский.xml b/tests/skills/cases/xdto-compile/fixtures/lf-config/Languages/Русский.xml
new file mode 100644
index 00000000..1ad6b469
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/fixtures/lf-config/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/xdto-compile/roundtrip-lf-preserve.json b/tests/skills/cases/xdto-compile/roundtrip-lf-preserve.json
new file mode 100644
index 00000000..22d62aea
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/roundtrip-lf-preserve.json
@@ -0,0 +1,33 @@
+{
+ "name": "регистрация в LF-ном Configuration.xml: правка наследует LF, создаваемый пакет — канон CRLF",
+ "setup": "fixture:lf-config",
+ "caseFiles": [
+ "minimal.xsd"
+ ],
+ "params": {
+ "xsdFile": "minimal.xsd"
+ },
+ "validatePath": "XDTOPackages/minimal",
+ "expect": {
+ "preserves": [
+ {
+ "file": "Configuration.xml",
+ "bom": true,
+ "eol": "lf",
+ "encoding": "UTF-8",
+ "finalNewline": false,
+ "noCR13": true
+ },
+ {
+ "file": "XDTOPackages/minimal.xml",
+ "bom": true,
+ "eol": "crlf",
+ "encoding": "UTF-8",
+ "finalNewline": false,
+ "noCR13": true,
+ "selfClose": "tight",
+ "noEmptyPairs": true
+ }
+ ]
+ }
+}
diff --git a/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/Configuration.xml b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/Configuration.xml
new file mode 100644
index 00000000..58ae48bd
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/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
+
+
+
+ КрлфКонф
+
+
+ ru
+ КрлфКонф
+
+
+
+
+ Version8_3_27
+ 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_27
+
+
+
+ Русский
+ minimal
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
new file mode 100644
index 00000000..3c1161b2
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/Ext/ClientApplicationInterface.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ UUID-002
+
+
+
+
+ UUID-004
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
new file mode 100644
index 00000000..37c60d78
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/Languages/Русский.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Русский
+
+
+ ru
+ Русский
+
+
+
+ ru
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/XDTOPackages/minimal.xml b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/XDTOPackages/minimal.xml
new file mode 100644
index 00000000..c603340a
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/XDTOPackages/minimal.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ minimal
+
+
+ ru
+ minimal
+
+
+
+ urn:test:minimal
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/XDTOPackages/minimal/Ext/Package.bin b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/XDTOPackages/minimal/Ext/Package.bin
new file mode 100644
index 00000000..54b87db8
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/XDTOPackages/minimal/Ext/Package.bin
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/minimal.xsd b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/minimal.xsd
new file mode 100644
index 00000000..fe77cf12
--- /dev/null
+++ b/tests/skills/cases/xdto-compile/snapshots/roundtrip-lf-preserve/minimal.xsd
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+