|
36 | 36 | ВсеТесты.Добавить("ТестДолжен_ЗаписатьТекущий_АтрибутВнутриЭлементаСЛишнимПереопределениемПространстваИмен"); |
37 | 37 | ВсеТесты.Добавить("ТестДолжен_ЗаписатьТекущий_КонецЭлемента"); |
38 | 38 | ВсеТесты.Добавить("ТестДолжен_ЗаписатьТекущий_Текст"); |
| 39 | + ВсеТесты.Добавить("ТестДолжен_ЗаписатьТекущий_CDATA"); |
39 | 40 |
|
40 | 41 | ВсеТесты.Добавить("ТестДолжен_ЗаписатьТекущий_ОбъявлениеИТипДокумента"); |
41 | 42 |
|
|
505 | 506 |
|
506 | 507 | КонецПроцедуры |
507 | 508 |
|
| 509 | +Процедура ТестДолжен_ЗаписатьТекущий_CDATA() Экспорт |
| 510 | + |
| 511 | + Перем ЧтениеXML, ЗаписьXML; |
| 512 | + |
| 513 | + ПодготовитьТестовыеДанныеДляЗаписиТекущего(ЧтениеXML, ЗаписьXML); |
| 514 | + ДойтиДоИмени(ЧтениеXML, "cdata"); |
| 515 | + ПрочитатьИПроверитьТип(ЧтениеXML, ТипУзлаXML.СекцияCDATA); |
| 516 | + |
| 517 | + ЗаписьXML.ЗаписатьНачалоЭлемента("эл"); |
| 518 | + ЗаписьXML.ЗаписатьТекущий(ЧтениеXML); |
| 519 | + ЗаписьXML.ЗаписатьСекциюCDATA(", к которому добавили ещё текст"); |
| 520 | + ЗаписьXML.ЗаписатьКонецЭлемента(); |
| 521 | + |
| 522 | + ПолученныйТекст = ЗаписьXML.Закрыть(); |
| 523 | + юТест.ПроверитьРавенство("<эл><![CDATA[Некоторый текст]]><![CDATA[, к которому добавили ещё текст]]></эл>", |
| 524 | + ПолученныйТекст, |
| 525 | + "CDATA"); |
| 526 | + |
| 527 | +КонецПроцедуры |
| 528 | + |
508 | 529 | Процедура ТестДолжен_ЗаписатьТекущий_ОбъявлениеИТипДокумента() Экспорт |
509 | 530 |
|
510 | 531 | Перем ЧтениеXML, ЗаписьXML; |
|
536 | 557 | |<xml xmlns:ns=""ns"" attr=""1"" ns:attr=""value""> |
537 | 558 | | <ns:data inner=""123"" inner2=""456"" inner3=""789"">Some Text</ns:data> |
538 | 559 | | <ins:data xmlns:ins=""inner namespace mapping"" ins:attr=""1""></ins:data> |
| 560 | + | <cdata><![CDATA[Некоторый текст]]></cdata> |
539 | 561 | |</xml>" |
540 | 562 | ; |
541 | 563 |
|
|
563 | 585 |
|
564 | 586 | КонецПроцедуры |
565 | 587 |
|
| 588 | +Функция ДойтиДоИмени(Знач ЧтениеXML, Знач Имя) |
| 589 | + |
| 590 | + Пока ЧтениеXML.Имя <> Имя Цикл |
| 591 | + |
| 592 | + Если Не ЧтениеXML.Прочитать() Тогда |
| 593 | + Возврат Ложь; |
| 594 | + КонецЕсли; |
| 595 | + |
| 596 | + КонецЦикла; |
| 597 | + |
| 598 | + Возврат Истина; |
| 599 | + |
| 600 | +КонецФункции |
| 601 | + |
566 | 602 | Процедура ПрочитатьИПроверитьТип(Знач ЧтениеXML, Знач ТипУзла, Знач Сообщение = Неопределено) |
567 | 603 | ЧтениеXML.Прочитать(); |
568 | 604 | юТест.ПроверитьРавенство(ЧтениеXML.ТипУзла, ТипУзла, Сообщение); |
|
0 commit comments