示例#1
0
        public void MakeMjBookTest()
        {
            Publisher ps = new Publisher(new PublishrConfig(author));

            MochajoeBook mjb = JsonConvert.DeserializeObject <MochajoeBook>(ps.Config.Template_Info);

            mjb.Chapters = new List <Chapter>();
            string      source = File.ReadAllText("book.json.user");
            TianyaDatas tdatas = JsonConvert.DeserializeObject <TianyaDatas>(source);
            int         readernow;

            readernow = 0;
            int        rid, aidnext;
            TianyaData tchapter, treader;

            for (int i = 0; i < tdatas.author.Length; i++)
            {
                Chapter c1 = new Chapter();
                tchapter = tdatas.author[i];

                c1.Number = i.ToString();
                c1.Time   = tchapter.time;
                c1.Text   = tchapter.txt;

                c1.Readers = new List <Reader>();

                if (i + 1 < tdatas.author.Length)
                {
                    aidnext = int.Parse(tdatas.author[i + 1].dataid);
                }
                else
                {
                    aidnext = int.MaxValue;
                }
                do
                {
                    treader = tdatas.reader[readernow];
                    rid     = int.Parse(treader.dataid);
                    if (rid <= aidnext)
                    {
                        Reader r1 = new Reader();
                        r1.Name  = treader.name;
                        r1.Time  = treader.time;
                        r1.Reply = treader.txt;

                        c1.Readers.Add(r1);
                        readernow++;
                    }
                } while ((rid <= aidnext) && (readernow < tdatas.reader.Length));
                mjb.Chapters.Add(c1);
            }
            mjb.ChaptersNumber = mjb.Chapters.Count.ToString();
            string json = JsonConvert.SerializeObject(mjb);

            File.WriteAllText("mjbook.json", json);

            Assert.IsNotNull(mjb.Chapters);
        }
        public void MochajoeBookTest()
        {
            string       buffer = System.IO.File.ReadAllText("MochajoeBook.json");
            MochajoeBook mjbook = JsonConvert.DeserializeObject <MochajoeBook>(buffer);

            mjbook.Chapters[0].Text = "a\\\\/,a,\\a,a,\"a\"{aaa}aa";
            string s1 = JsonConvert.SerializeObject(mjbook.Chapters[0]);

            Assert.IsNotNull(s1);
            Assert.IsNotNull(mjbook.AuthorName);
            Assert.IsNotNull(mjbook.Title);
            Assert.AreEqual("三语沫", mjbook.AuthorName);
        }