Decode DCS appearance template XML
This commit is contained in:
@@ -38,6 +38,7 @@ from parser.bsl_validation import replace_routine_text, routine_blocks, text_sha
|
||||
from parser.form_payload import command_handler_links, data_path_reference_from_node, decode_form_payload, dynamic_list_fields, dynamic_list_settings, embedded_table_addition_row, enrich_form_common_semantic, enrich_item_data_paths, enrich_item_reference_semantics, event_handlers, event_handlers_from_node, form_common_semantic, form_item_coverage_summary, section_record_semantic_properties # noqa: E402
|
||||
from parser.form_xml import decode_form_xml # noqa: E402
|
||||
from parser.scd_payload import compare_scd_semantics, inspect_scd_payload, plan_scd_scalar_patch # noqa: E402
|
||||
from parser.appearance_payload import inspect_appearance_payload # noqa: E402
|
||||
from parser.dbnames import parse_dbnames_bytes, parse_dbnames_version_bytes # noqa: E402
|
||||
sys.path.insert(0, str(ROOT / "plugins" / "1c" / "connector"))
|
||||
import adapter_1c_server as adapter_server # noqa: E402
|
||||
@@ -252,6 +253,18 @@ def test_scd_payload_decoder_reads_xml_after_platform_prefix() -> None:
|
||||
assert result["analysis"]["settings_context"] == {"status": "not_present", "sections": {}}
|
||||
|
||||
|
||||
def test_appearance_payload_decoder_reads_xml_rules() -> None:
|
||||
xml = """<?xml version="1.0" encoding="UTF-8"?>
|
||||
<AppearanceTemplate><item><parameter>Заголовок</parameter><value>style:Title</value></item><style><name>Title</name></style></AppearanceTemplate>"""
|
||||
|
||||
result = inspect_appearance_payload(compress_payload(b"\x00\x01" + xml.encode("utf-8"), "raw_deflate"))
|
||||
|
||||
assert result["status"] == "ok"
|
||||
assert result["items"] == [{"ordinal": 1, "parameter": "Заголовок", "value": "style:Title"}]
|
||||
assert result["outline"]["tag_counts"] == {"AppearanceTemplate": 1, "item": 1, "name": 1, "parameter": 1, "style": 1, "value": 1}
|
||||
assert result["diagnostics"]["write"] == "unsupported_until_reverse_codec_fixture"
|
||||
|
||||
|
||||
def test_scd_scalar_patch_preserves_platform_prefix_and_trailer() -> None:
|
||||
xml = """<?xml version="1.0" encoding="UTF-8"?>
|
||||
<SchemaFile><dataCompositionSchema>
|
||||
|
||||
Reference in New Issue
Block a user