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); }