Beispiel #1
0
        public void Ymnos_SerializationFull()
        {
            string            xmlString = @"<Ymnos>
                                    <annotation>
					                    <item language=""cs-ru"">Аннотация</item>
				                    </annotation>
                                    <stihos>
							            <item language=""cs-ru"">Стих 1</item>
						            </stihos>
                                    <stihos>
							            <item language=""cs-ru"">Стих 2</item>
						            </stihos>
                                    <text>
						                <item language=""cs-ru"">Текст</item>
					                </text>
				                </Ymnos>"                ;
            TypiconSerializer ser       = new TypiconSerializer();
            Ymnos             element   = ser.Deserialize <Ymnos>(xmlString);

            element.Text["cs-ru"] = "Текст измененный";

            string result = ser.Serialize(element);

            Assert.Pass(result);
        }
        public void OrthrosTest_DeserializeFull()
        {
            string xml = TestDataXmlReader.GetXmlString("OrthrosTest_DeserializeFull.xml");

            TypiconSerializer ser     = new TypiconSerializer();
            Orthros           element = ser.Deserialize <Orthros>(xml);

            Assert.NotNull(element.SedalenKathisma1);
            Assert.NotNull(element.SedalenKathisma2);
            Assert.NotNull(element.SedalenKathisma3);
            Assert.NotNull(element.SedalenPolyeleos);

            Assert.AreEqual(element.Megalynarion.Count, 1);
            Assert.AreEqual(element.Eclogarion.Count, 17);
            Assert.AreEqual(element.Prokeimenon.Ihos, 3);

            Assert.NotNull(element.Evangelion);
            Assert.AreEqual(element.Evangelion.Count, 1);

            Assert.AreEqual(element.Sticheron50.Ymnis.Count, 1);
            Assert.AreEqual(element.Kanones.Count, 3);
            Assert.NotNull(element.SedalenKanonas);

            Assert.AreEqual(1, element.Kontakia.Count);
            Assert.AreEqual(1, element.Exapostilarion.Ymnis.Count);
            Assert.NotNull(element.Exapostilarion.Theotokion);

            Assert.NotNull(element.Ainoi);
            Assert.IsNull(element.Aposticha);
        }
Beispiel #3
0
        public void SixHourTest_Deserialization_ProkeimenRequired()
        {
            #region xml
            string xmlString = @"<sixhour>
		                            <troparion>
			                            <group ihos=""5"">
				                            <ymnos>
					                            <text>
						                            <item language=""cs-ru"">[item] [sign] 6-й час. Тропарь пророчества</item>
					                            </text>
				                            </ymnos>
			                            </group>
		                            </troparion>
		                            <prokeimeni>
			                            
		                            </prokeimeni>
		                            <paroimies>
			                            <paroimia quote=""3.1-14"">
				                            <bookname>
					                            <item language=""cs-ru"">Пророчества Исаиина чтение</item>
				                            </bookname>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 1</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 2</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 3</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 4</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 5</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 6</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 7</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 8</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 9</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Паремия 1. Стих 10</item>
				                            </stihos>
			                            </paroimia>
		                            </paroimies>
	                            </sixhour>";
            #endregion
            TypiconSerializer ser = new TypiconSerializer();
            SixHour element = ser.Deserialize<SixHour>(xmlString);

            Assert.IsFalse(element.IsValid);
        }
Beispiel #4
0
        public void Prosomoion_Serialize()
        {
            string xmlString = @"<prosomoion>
                                    <item language=""cs-ru"">Все́ отло́жше</item>
                                  </prosomoion>";

            TypiconSerializer ser     = new TypiconSerializer();
            Prosomoion        element = ser.Deserialize <Prosomoion>(xmlString);

            element.Self = true;

            xmlString = ser.Serialize(element);

            element = ser.Deserialize <Prosomoion>(xmlString);

            Assert.IsTrue(element.Self);
        }
        public void EvangelionPart_Deserialize()
        {
            string            xmlString = @"<EvangelionPart number=""43"" bookname=""Мф""/>";
            TypiconSerializer ser       = new TypiconSerializer();
            EvangelionPart    element   = ser.Deserialize <EvangelionPart>(xmlString);

            Assert.AreEqual(element.Number, 43);
            Assert.AreEqual(element.BookName, EvangelionBook.Мф);
        }
Beispiel #6
0
        public void Prosomoion_Self_Serialize()
        {
            string xmlString = @"<prosomoion self=""true""/>";

            TypiconSerializer ser     = new TypiconSerializer();
            Prosomoion        element = ser.Deserialize <Prosomoion>(xmlString);

            Assert.Pass(ser.Serialize(element));
        }
Beispiel #7
0
        public void MikrosEsperinos_Creature()
        {
            string folderPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"TestData");
            var    reader     = new FileReader(folderPath);
            string xml        = reader.Read("MikrosEsperinosTest.xml");

            TypiconSerializer ser     = new TypiconSerializer();
            MikrosEsperinos   element = ser.Deserialize <MikrosEsperinos>(xml);

            Assert.AreEqual(element.Kekragaria.Groups[0].Ymnis.Count, 3);
        }
Beispiel #8
0
        public void YmnosGroupTest_ValidIhos()
        {
            string     folderPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"TestData");
            FileReader reader     = new FileReader(folderPath);
            string     xml        = reader.Read("YmnosGroupTest.xml");

            TypiconSerializer ser     = new TypiconSerializer();
            YmnosGroup        element = ser.Deserialize <YmnosGroup>(xml);

            Assert.IsTrue(element.IsValid);
        }
Beispiel #9
0
        public void Ymnos_Deserialization()
        {
            string            xmlString = @"<Ymnos>
                                    <text>
						                <item language=""cs-ru"">[item] [sign] Господи воззвах, Славник</item>
					                </text>
				                </Ymnos>"                ;
            TypiconSerializer ser       = new TypiconSerializer();
            Ymnos             element   = ser.Deserialize <Ymnos>(xmlString);

            Assert.IsFalse(element.Text.IsEmpty);
            Assert.Pass(element.Text["cs-ru"]);
        }
Beispiel #10
0
        public void SixHourTest_Deserialization()
        {
            string folderPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"TestData");
            FileReader reader = new FileReader(folderPath);
            string xml = reader.Read("SixHourTest.xml");

            TypiconSerializer ser = new TypiconSerializer();
            SixHour element = ser.Deserialize<SixHour>(xml);

            Assert.AreEqual(1, element.Troparion.YmnosStructureCount);
            Assert.AreEqual(2, element.Prokeimeni.Count);
            Assert.AreEqual(1, element.Paroimies.Count);
            Assert.AreEqual(10, element.Paroimies[0].Stihoi.Count);
        }
Beispiel #11
0
        public void EsperinosTest_Serialization()
        {
            string     folderPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"TestData");
            FileReader reader     = new FileReader(folderPath);
            string     xml        = reader.Read("Esperinos.xml");

            TypiconSerializer ser = new TypiconSerializer();

            Esperinos esperinos = ser.Deserialize <Esperinos>(xml);

            Assert.IsNotNull(esperinos);
            Assert.AreEqual(esperinos.Kekragaria.Groups[0].Ihos, 1);
            Assert.AreEqual(esperinos.Paroimies.Count, 2);
        }
Beispiel #12
0
        public void ItemText_Deserialize()
        {
            string xmlString = @"<ItemText>
	                                <item language=""cs-ru"">Блажен муж, иже не иде на совет нечестивых и на пути грешных не ста, и на седалищи губителей не седе,</item>
	                                <item language=""cs-cs"">Бlжeнъ мyжъ, и4же не и4де на совётъ нечести1выхъ, и3 на пути2 грёшныхъ не стA, и3 на сэдaлищи губи1телей не сёде:</item>
	                                <item language=""ru-ru"">Блажен муж, который не пошел на совет нечестивых, и на путь грешных не вступил, и не сидел в сборище губителей;</item>
	                                <item language=""el-el"">Μακάριος ἀνήρ, ὃς οὐκ ἐπορεύθη ἐν βουλῇ ἀσεβῶν καὶ ἐν ὁδῷ ἁμαρτωλῶν οὐκ ἔστη καὶ ἐπὶ καθέδραν λοιμῶν οὐκ ἐκάθισεν,</item>
                                </ItemText>";

            TypiconSerializer ser     = new TypiconSerializer();
            ItemText          element = ser.Deserialize <ItemText>(xmlString);

            Assert.IsNotNull(element);
            Assert.IsFalse(element.IsEmpty);
        }
Beispiel #13
0
        public void PsalmStihos_Serialize_WithoutNumber()
        {
            PsalmStihos stihos = new PsalmStihos();

            var result = stihos.AddElement("cs-ru", "Стих 1");

            TypiconSerializer ser = new TypiconSerializer();

            string xmlString = ser.Serialize(stihos);

            PsalmStihos element = ser.Deserialize <PsalmStihos>(xmlString);

            Assert.IsNotNull(element);
            Assert.AreEqual(null, element.Number);
            Assert.Pass(xmlString);
        }
Beispiel #14
0
        private static void TestEsperinos()
        {
            XmlSerializer formatter = new XmlSerializer(typeof(Esperinos));

            string xmlString = File.ReadAllText(@"data\Esperinos.xml");

            TypiconSerializer ser = new TypiconSerializer();

            Esperinos esperinos = ser.Deserialize<Esperinos>(xmlString);

            using (FileStream fs = new FileStream(@"data\Esperinos.xml", FileMode.Create))
            {
                formatter.Serialize(fs, esperinos);
                Console.WriteLine("Объект сериализован");
            }
        }
Beispiel #15
0
        public void OrthrosTest_DeserializeEvangelion()
        {
            #region xml
            string xmlString = @"<orthros>
                                    <evangelion>
			                            <part number=""43"" bookname=""Мф""/>
                                        <part number=""36"" bookname=""Ин""/>
		                            </evangelion>
                                 </orthros>";

            #endregion
            TypiconSerializer ser     = new TypiconSerializer();
            Orthros           element = ser.Deserialize <Orthros>(xmlString);

            Assert.NotNull(element.Evangelion);
            Assert.AreEqual(element.Evangelion.Count, 2);
        }
Beispiel #16
0
        public void Leitourgia_Deserialization()
        {
            string folderPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"TestData");
            var    reader     = new FileReader(folderPath);
            string xml        = reader.Read("LeitourgiaTest.xml");

            TypiconSerializer ser     = new TypiconSerializer();
            Leitourgia        element = ser.Deserialize <Leitourgia>(xml);

            Assert.AreEqual(element.Makarismi.Links.Count, 2);
            Assert.AreEqual(element.Makarismi.Ymnis.Ymnis.Count, 6);
            Assert.AreEqual(element.Prokeimeni[0].Ihos, 7);
            Assert.AreEqual(element.Apostles[0].Number, 213);
            Assert.AreEqual(element.Alleluias[0].Stihoi.Count, 2);
            Assert.AreEqual(element.Evangelion[0].BookName, EvangelionBook.Мф);
            Assert.AreEqual(2, element.Kinoniki.Count);
        }
Beispiel #17
0
        public void YmnosSrtucture_Deserialization()
        {
            string xmlString = @"<YmnosStructure>
			                        <group ihos=""1"">
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, 1 стихира </item>
					                        </text>
				                        </ymnos>
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, 2 стихира </item>
					                        </text>
				                        </ymnos>
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, 3 стихира </item>
					                        </text>
				                        </ymnos>
			                        </group>
			                        <doxastichon ihos=""8"">
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, Славник</item>
					                        </text>
				                        </ymnos>
			                        </doxastichon>
			                        <theotokion ihos=""8"" kind=""stavros"">
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, Крестобогородичен</item>
					                        </text>
				                        </ymnos>
			                        </theotokion>
		                        </YmnosStructure>"        ;

            TypiconSerializer ser     = new TypiconSerializer();
            YmnosStructure    element = ser.Deserialize <YmnosStructure>(xmlString);

            Assert.AreEqual(element.Groups.Count, 1);
            Assert.AreEqual(element.Groups[0].Ymnis.Count, 3);
            Assert.IsNotNull(element.Doxastichon);
            Assert.AreEqual(element.Doxastichon.Ihos, 8);
            Assert.AreEqual(element.Theotokion[0].Kind, YmnosGroupKind.Stavros);
        }
Beispiel #18
0
        public void Ymnos_DeserializationTextRequired()
        {
            string            xmlString = @"<Ymnos>
                                    <annotation>
					                    <item language=""cs-ru"">Творе́ние господи́на Пахо́мия мона́ха.</item>
				                    </annotation>
                                    <stihos>
							            <item language=""cs-ru"">[item] [sign] Вечерня. На стиховне, Стих 1-й стихиры.</item>
						            </stihos>
                                    <stihos>
							            <item language=""cs-ru"">[item] [sign] Вечерня. На стиховне, Стих 2-й стихиры.</item>
						            </stihos>
				                </Ymnos>"                ;
            TypiconSerializer ser       = new TypiconSerializer();
            Ymnos             element   = ser.Deserialize <Ymnos>(xmlString);

            Assert.IsFalse(element.IsValid);
        }
Beispiel #19
0
        public void YmnosSrtucture_Serialization()
        {
            string xmlString = @"<YmnosStructure>
			                        <group ihos=""1"">
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, 1 стихира </item>
					                        </text>
				                        </ymnos>
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, 2 стихира </item>
					                        </text>
				                        </ymnos>
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, 3 стихира </item>
					                        </text>
				                        </ymnos>
			                        </group>
			                        <doxastichon ihos=""8"">
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, Славник</item>
					                        </text>
				                        </ymnos>
			                        </doxastichon>
			                        <theotokion ihos=""8"" kind=""stavros"">
				                        <ymnos>
					                        <text>
						                        <item language=""cs-ru"">[item] [sign] Господи воззвах, Крестобогородичен</item>
					                        </text>
				                        </ymnos>
			                        </theotokion>
		                        </YmnosStructure>"        ;

            TypiconSerializer ser     = new TypiconSerializer();
            YmnosStructure    element = ser.Deserialize <YmnosStructure>(xmlString);

            string result = ser.Serialize(element);

            Assert.Pass(result);
        }
        public void ItemTextStyled_StringExpression_Get()
        {
            string xmlString = @"<ItemTextStyled bold=""true"">
	                                <item language=""cs-ru"">Блажен муж, иже не иде на совет нечестивых и на пути грешных не ста, и на седалищи губителей не седе,</item>
	                                <item language=""cs-cs"">Бlжeнъ мyжъ, и4же не и4де на совётъ нечести1выхъ, и3 на пути2 грёшныхъ не стA, и3 на сэдaлищи губи1телей не сёде:</item>
	                                <item language=""ru-ru"">Блажен муж, который не пошел на совет нечестивых, и на путь грешных не вступил, и не сидел в сборище губителей;</item>
	                                <item language=""el-el"">Μακάριος ἀνήρ, ὃς οὐκ ἐπορεύθη ἐν βουλῇ ἀσεβῶν καὶ ἐν ὁδῷ ἁμαρτωλῶν οὐκ ἔστη καὶ ἐπὶ καθέδραν λοιμῶν οὐκ ἐκάθισεν,</item>
                                </ItemTextStyled>";

            var serializer = new TypiconSerializer();

            var element = serializer.Deserialize <ItemTextStyled>(xmlString);

            element.IsBold = false;

            var newXmlString = serializer.Serialize(element);

            Assert.IsTrue(newXmlString.Contains(@"bold=""false"""));
        }
        public void PsalmStihos_Serialize()
        {
            PsalmStihos stihos = new PsalmStihos()
            {
                Number = 1
            };

            stihos.AddOrUpdate("cs-ru", "Стих 1");

            TypiconSerializer ser = new TypiconSerializer();

            string xmlString = ser.Serialize(stihos);

            PsalmStihos element = ser.Deserialize <PsalmStihos>(xmlString);

            Assert.IsNotNull(element);
            Assert.AreEqual(1, element.Number);
            Assert.Pass(xmlString);
        }
        public void ItemText_Serialize()
        {
            string            xmlString = @"<ItemText>
	                                <item language=""cs-ru"">Блажен муж, иже не иде на совет нечестивых и на пути грешных не ста, и на седалищи губителей не седе,</item>
	                                <item language=""cs-cs"">Бlжeнъ мyжъ, и4же не и4де на совётъ нечести1выхъ, и3 на пути2 грёшныхъ не стA, и3 на сэдaлищи губи1телей не сёде:</item>
	                                <item language=""ru-ru"">Блажен муж, который не пошел на совет нечестивых, и на путь грешных не вступил, и не сидел в сборище губителей;</item>
	                                <item language=""el-el"">Μακάριος ἀνήρ, ὃς οὐκ ἐπορεύθη ἐν βουλῇ ἀσεβῶν καὶ ἐν ὁδῷ ἁμαρτωλῶν οὐκ ἔστη καὶ ἐπὶ καθέδραν λοιμῶν οὐκ ἐκάθισεν,</item>
                                </ItemText>";
            TypiconSerializer ser       = new TypiconSerializer();
            ItemText          element   = ser.Deserialize <ItemText>(xmlString);

            //element["cs-cs"] = "cs-cs Текст измененный";
            element.AddOrUpdate(new ItemTextUnit()
            {
                Language = "cs-cs", Text = "cs-cs Текст измененный"
            });

            string result = ser.Serialize(element);

            Assert.Pass(result);
        }
Beispiel #23
0
        public void KanonasTest_Deserialization()
        {
            string     folderPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"TestData");
            FileReader reader     = new FileReader(folderPath);
            string     xml        = reader.Read("KanonasTest.xml");

            TypiconSerializer ser     = new TypiconSerializer();
            Kanonas           element = ser.Deserialize <Kanonas>(xml);

            Assert.IsTrue(element.IsValid);
            Assert.NotNull(element.Acrostic["cs-cs"]);
            Assert.NotNull(element.Annotation["cs-cs"]);
            Assert.NotNull(element.Stihos["cs-ru"]);
            Assert.AreEqual(element.Odes.Count, 8);
            //Assert.NotNull(element.Odes[7].Irmos);
            //Assert.NotNull(element.Odes[7].Katavasia);

            Assert.AreEqual(element.Sedalen.Theotokion.Count, 2);
            Assert.NotNull(element.Exapostilarion.Ymnis[0].Text["cs-ru"]);
            //Assert.AreEqual(element.Evangelion.Count, 2);
        }
        public void ItemText_Serialize()
        {
            string            xmlString = @"<ItemTextNoted>
	                                <item language=""cs-ru"">Блажен муж, иже не иде на совет нечестивых и на пути грешных не ста, и на седалищи губителей не седе,</item>
	                                <item language=""cs-cs"">Бlжeнъ мyжъ, и4же не и4де на совётъ нечести1выхъ, и3 на пути2 грёшныхъ не стA, и3 на сэдaлищи губи1телей не сёде:</item>
	                                <item language=""ru-ru"">Блажен муж, который не пошел на совет нечестивых, и на путь грешных не вступил, и не сидел в сборище губителей;</item>
	                                <item language=""el-el"">Μακάριος ἀνήρ, ὃς οὐκ ἐπορεύθη ἐν βουλῇ ἀσεβῶν καὶ ἐν ὁδῷ ἁμαρτωλῶν οὐκ ἔστη καὶ ἐπὶ καθέδραν λοιμῶν οὐκ ἐκάθισεν,</item>
	                                <note><item language=""cs-cs"">Трижды.</item><style><red>true</red><bold>true</bold></style></note>
                                </ItemTextNoted>";
            TypiconSerializer ser       = new TypiconSerializer();
            ItemTextNoted     element   = ser.Deserialize <ItemTextNoted>(xmlString);

            element["cs-cs"] = "cs-cs Текст измененный";

            element.Style.Header = HeaderCaption.h1;
            element.Style.IsBold = true;

            string result = ser.Serialize(element);

            Assert.Pass(result);
        }
Beispiel #25
0
        public void SixHourTest_Deserialization_ParoimiaRequired()
        {
            #region xml
            string xmlString = @"<sixhour>
		                            <troparion>
			                            <group ihos=""5"">
				                            <ymnos>
					                            <text>
						                            <item language=""cs-ru"">[item] [sign] 6-й час. Тропарь пророчества</item>
					                            </text>
				                            </ymnos>
			                            </group>
		                            </troparion>
		                            <prokeimeni>
			                            <prokeimenon ihos=""4"">
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Прокимен 1. Стих 1</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Прокимен 1. Стих 2</item>
				                            </stihos>
			                            </prokeimenon>
			                            <prokeimenon ihos=""6"">
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Прокимен 2. Стих 1</item>
				                            </stihos>
				                            <stihos>
					                            <item language=""cs-ru"">[item] [sign] 6-й час. Прокимен 2. Стих 2</item>
				                            </stihos>
			                            </prokeimenon>
		                            </prokeimeni>
		                            <paroimies>
			                        </paroimies>    
	                            </sixhour>";
            #endregion
            TypiconSerializer ser = new TypiconSerializer();
            SixHour element = ser.Deserialize<SixHour>(xmlString);

            Assert.IsFalse(element.IsValid);
        }
Beispiel #26
0
        public void Ymnos_DeserializationFull()
        {
            string            xmlString = @"<Ymnos>
                                    <annotation>
					                    <item language=""cs-ru"">Аннотация</item>
				                    </annotation>
                                    <stihos>
							            <item language=""cs-ru"">Стих 1</item>
						            </stihos>
                                    <stihos>
							            <item language=""cs-ru"">Стих 2</item>
						            </stihos>
                                    <text>
						                <item language=""cs-ru"">Текст</item>
					                </text>
				                </Ymnos>"                ;
            TypiconSerializer ser       = new TypiconSerializer();
            Ymnos             element   = ser.Deserialize <Ymnos>(xmlString);

            Assert.IsFalse(element.Text.IsEmpty);
            Assert.Pass(element.Text["cs-ru"]);
        }
Beispiel #27
0
        public void YmnosGroupTest_Deserialization()
        {
            string xmlString = @"<YmnosGroup ihos=""4"">
				                    <prosomoion>
					                    <item language=""cs-ru"">Ки́ими похва́льными.</item>
				                    </prosomoion>
                                    <ymnos>
					                    <stihos>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, Стих 1-й стихиры.</item>
					                    </stihos>
					                    <text>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, 1 стихира.</item>
					                    </text>
				                    </ymnos>
				                    <ymnos>
					                    <stihos>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, Стих 2-й стихиры.</item>
					                    </stihos>
					                    <text>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, 2 стихира.</item>
					                    </text>
				                    </ymnos>
				                    <ymnos>
					                    <stihos>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, Стих 3-й стихиры.</item>
					                    </stihos>
					                    <text>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, 3 стихира.</item>
					                    </text>
				                    </ymnos>
			                    </YmnosGroup>"            ;

            TypiconSerializer ser     = new TypiconSerializer();
            YmnosGroup        element = ser.Deserialize <YmnosGroup>(xmlString);

            Assert.AreEqual(element.Ymnis.Count, 3);
            Assert.AreEqual(element.Ihos, 4);
            Assert.IsNull(element.Annotation);
        }
Beispiel #28
0
        public void YmnosGroupTest_Serialization()
        {
            string xmlString = @"<YmnosGroup ihos=""4"">
				                    <prosomoion>
					                    <item language=""cs-ru"">Ки́ими похва́льными.</item>
				                    </prosomoion>
                                    <ymnos>
					                    <stihos>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, Стих 1-й стихиры.</item>
					                    </stihos>
					                    <text>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, 1 стихира.</item>
					                    </text>
				                    </ymnos>
				                    <ymnos>
					                    <stihos>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, Стих 2-й стихиры.</item>
					                    </stihos>
					                    <text>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, 2 стихира.</item>
					                    </text>
				                    </ymnos>
				                    <ymnos>
					                    <stihos>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, Стих 3-й стихиры.</item>
					                    </stihos>
					                    <text>
						                    <item language=""cs-ru"">[item] [sign] Малая вечерня. На стиховне, 3 стихира.</item>
					                    </text>
				                    </ymnos>
			                    </YmnosGroup>"            ;

            TypiconSerializer ser     = new TypiconSerializer();
            YmnosGroup        element = ser.Deserialize <YmnosGroup>(xmlString);

            string result = ser.Serialize(element);

            Assert.Pass(result);
        }
Beispiel #29
0
        public void OutputSectionModelCollection_Serialize()
        {
            var serializer = new TypiconSerializer();

            var collection = new OutputSectionModelCollection()
            {
                new OutputSectionModel()
                {
                    Kind       = ElementViewModelKind.Choir,
                    KindText   = new ItemText(new ItemTextUnit("cs-ru", "Заголовок"), new ItemTextUnit("ru-ru", "Заголовок")),
                    Paragraphs = new List <ItemTextNoted>()
                    {
                        new ItemTextNoted(new ItemText(new ItemTextUnit("cs-ru", "Параграф1"), new ItemTextUnit("ru-ru", "Параграф1"))),
                        new ItemTextNoted(new ItemText(new ItemTextUnit("cs-ru", "Параграф2"), new ItemTextUnit("ru-ru", "Параграф2")))
                    }
                }
            };
            var str = serializer.Serialize(collection);

            var deserialized = serializer.Deserialize <OutputSectionModelCollection>(str);

            Assert.NotNull(deserialized);
        }
        public void Docx_FromFile()
        {
            var xml = TestDataXmlReader.GetXmlString("DocxViewerWeek.xml");

            var queryProcessor = new Mock <IQueryProcessor>();

            queryProcessor.Setup(c => c.Process(It.IsAny <PrintWeekTemplateQuery>()))
            .Returns(GetPrintWeekTemplate());

            queryProcessor.Setup(c => c.Process(It.IsAny <PrintDayTemplateQuery>()))
            .Returns <PrintDayTemplateQuery>(q => GetDayWeekTemplate(q.Number));

            var ser  = new TypiconSerializer();
            var week = ser.Deserialize <FilteredOutputWeek>(xml);

            var viewer = new DocxFromOutputTemplatesWeekViewer(queryProcessor.Object);

            var result = viewer.Execute(1, week);

            File.WriteAllBytes(GetPath($"PrintWeekTemplate.docx"), result.Value.Content);

            Assert.IsTrue(result.Success);
        }