Ejemplo n.º 1
0
        public void TestAllMobis()
        {
            //Successes: 300 / 328
            //Time usage: 17,36 seconds

            var epubs      = GetMobis();
            var failures   = new List <string>();
            var stacktrace = "";

            var start = DateTime.Now;

            foreach (var file in epubs)
            {
                try
                {
                    var book = new MobiFile(new FileStream(file, FileMode.Open));
                }
                catch (Exception ex)
                {
                    failures.Add(Path.GetDirectoryName(file) + ": " + ex.Message);
                    stacktrace = ex.StackTrace;
                }
            }

            Console.WriteLine("Successes: " + (epubs.Length - failures.Count) + " / " + epubs.Length);
            Console.WriteLine("Time usage: " + DateTime.Now.Subtract(start).TotalSeconds + " seconds");

            foreach (var failure in failures)
            {
                Console.WriteLine(failure);
            }

            Console.WriteLine(stacktrace);
        }
Ejemplo n.º 2
0
 public async Task <Ebook> OpenBook(string filePath, BookInfo info = null)
 {
     return(await Task.Run(() => {
         var book = new MobiFile(_fileService.LoadFileStreamAsync(filePath).Result, false);
         //var epub = new EpubEbook(book, filePath, info);
         return new EpubEbook(null, null);
     }));
 }
Ejemplo n.º 3
0
        public void TestSingleMobi()
        {
            var book = new MobiFile(new FileStream(GetMobis().First(), FileMode.Open));

            Assert.AreEqual(629855, book.BookText.Length);
            Assert.AreEqual(@"<html><head><guide><reference type=""toc"" title=""Table of Contents"" filepos=0000647004 /></guide></he", book.BookText.Substring(0, 100));
            Assert.AreEqual(" ></a></body></html>", book.BookText.Substring(book.BookText.Length - 20, 20));
        }