Example #1
0
        public void CanAddNewBook()
        {
            var page = new Page { FileName = "test_filename", Number = 1};
            page.AddLine(new Line {Number = 1});
            var book = new Book { Directory = "test", Name = "test"};
            book.AddPage(page);
            var repository = new BookRepository(DbFile);
            repository.Add(book);

            using (var session = _sessionFactory.OpenSession())
            {
                var fromDb = session.Get<Book>(book.UID);

                Assert.IsNotNull(fromDb);
                Assert.AreNotSame(book, fromDb);
                Assert.AreEqual(book.Name, fromDb.Name);
                Assert.AreEqual(book.Directory, fromDb.Directory);
                Assert.AreEqual(book.Pages[0].Number, fromDb.Pages[0].Number);
                Assert.AreEqual(book.Pages[0].FileName, fromDb.Pages[0].FileName);
                Assert.AreEqual(book.Pages[0].Lines[0].Number, fromDb.Pages[0].Lines[0].Number);
            }
        }