public void AddBookCopy(string title, string author, string publisher, string isbn) { var bookDescription = new BookDescription(title, author, publisher); var bookCopy = new BookCopy(bookDescription, DateTime.Now, isbn); _dataRepository.AddBookCopy(bookCopy); }
public BookDetailsBLL() { _description = new BookDetailsBLL.BookDescription(); _publishInfo = new BookDetailsBLL.BookPublishInfo(); _dimensions = new BookDimensions(); AuthorIDs = new List<int>(); }
public void AddBook(string title, string author, uint quantity) { var bookDescripton = new BookDescription(title, author); var bookShelf = new Book(bookDescripton); var collectionOfTheSameBooks = Enumerable.Range(0, (int)quantity).Select(x => bookShelf); Book.AddRange(collectionOfTheSameBooks); }
public void BookDescription_ShouldBeBetween1And100Characters() { Assert.Throws <ArgumentNullException>(() => new BookDescription(null !)); Assert.Throws <ArgumentException>(() => new BookDescription(string.Empty)); Assert.Throws <ArgumentException>(() => new BookDescription(new string('a', 101))); _ = new BookDescription(new string('a', 100)); _ = new BookDescription("a"); }
public override void AddBookDescription(BookDescription bookDescription) { var x = bookDescription ?? throw new ArgumentNullException(); if (_dataContext.BookDescriptions.Where(y => x.Equals(y.Value)).Count() == 0) { _dataContext.BookDescriptions.Add(x.Title, x); } }
public void Describe_ShouldWork_EvenOnArchivedBooks(BookDescription description) { var sut = Fixture.CreateBook(config => config .With(x => x.IsArchived, true)); Assert.NotEqual(description, sut.GetState().Description); sut.Describe(description); Assert.Equal(description, sut.GetState().Description); }
protected TestBase() { var faker = new Faker(); var author = new Author(FullName.Create(faker.Name.FirstName(), faker.Name.LastName()).Value); var bookCategory = BookCategory.Create(CategoryBook.Business, faker.Locale); var bookDescription = BookDescription.Create(faker.Locale, faker.Date.Random.Number(1, DateTime.Now.Year)); var bookIsbn = Isbn.Create(TypeIsbn.Isbn10, "ISBN 1-58182-008-9"); DefaultBookInfo = new Books(author, bookCategory.Value, bookDescription.Value, bookIsbn.Value); }
public void Describe_ShouldUpdateDescription(BookDescription description) { var sut = Fixture.CreateBook(config => config .With(x => x.IsArchived, false)); Assert.NotEqual(description, sut.GetState().Description); sut.Describe(description); Assert.Equal(description, sut.GetState().Description); }
public void getStateWithGoodId() { DataRepository dataRepository = this.CreateDataRepository(); Person reader = new Reader("", "", 0, ""); Item book = new Book("", null, 0, ""); StateDescription state = new BookDescription(book, "", new DateTime(1990, 1, 1), Purpose.All, Kind.Criminal); dataRepository.addStateDescription(state); Assert.AreEqual <StateDescription>(state, dataRepository.getStateDescription(0)); }
public void AddBookCopyConsistencyTest() { var bookDescription = new BookDescription("The Witcher", "Sapko", "JDPublish"); var bookCopy = new BookCopy(bookDescription, new DateTime(1999, 12, 13), "3232646894322"); var counter = repository.GetAllBookDescriptions().Count(); Assert.AreEqual(repository.GetAllBookDescriptions().Count(), counter); repository.AddBookCopy(bookCopy); Assert.AreEqual(repository.GetAllBookDescriptions().Count(), counter + 1); }
public void updateStateWithWrongId() { DataRepository dataRepository = this.CreateDataRepository(); Person reader = new Reader("", "", 0, ""); Item book = new Book("", null, 0, ""); StateDescription state = new BookDescription(book, "", new DateTime(1990, 1, 1), Purpose.All, Kind.Criminal); dataRepository.updateStateDescription(1, state); Assert.Fail(); }
public void DataPopulatorTest() { AbstractDataRepository repository = new DataRepository(); ConstPopulator populator = new ConstPopulator(); DataPopulator dataPopulator = new DataPopulator(repository, populator); dataPopulator.populate(); Assert.AreEqual(repository.GetReader(0), new Reader("Dominik", "Karski")); Assert.AreEqual(repository.GetReader(1), new Reader("Sebastian", "Kujawski")); Assert.AreEqual(repository.GetReader(2), new Reader("Joe", "Biden")); Assert.AreEqual(repository.GetReader(3), new Reader("Donald", "Trump")); var book = new BookDescription("Metro 2033", "Dmitry Glukhovsky", "Insignis"); Assert.AreEqual(repository.GetBookDescription(book.Title), book); var book1 = new BookDescription("Diuna", "Frank Herbert", "Rebis"); Assert.AreEqual(repository.GetBookDescription(book1.Title), book1); var book2 = new BookDescription("Harry Potter", "J.K.Rowling", "Media Rodzina"); Assert.AreEqual(repository.GetBookDescription(book2.Title), book2); var book3 = new BookDescription("Pan Lodowego Ogrodu (tom 1)", "Jarosław Grzędowicz", "Fabryka Słów"); Assert.AreEqual(repository.GetBookDescription(book3.Title), book3); Assert.AreEqual(repository.GetBookCopy(0), new BookCopy(book, new DateTime(2018, 5, 23), "1234567890123")); Assert.AreEqual(repository.GetBookCopy(1), new BookCopy(book, new DateTime(2005, 2, 22), "2234567890123")); Assert.AreEqual(repository.GetBookCopy(2), new BookCopy(book1, new DateTime(2012, 2, 1), "3234567890123")); Assert.AreEqual(repository.GetBookCopy(3), new BookCopy(book2, new DateTime(1999, 1, 13), "4234567890123")); Assert.AreEqual(repository.GetBookCopy(4), new BookCopy(book3, new DateTime(2003, 5, 27), "5234567890123")); Assert.AreEqual(repository.GetBookEvent(0), new Rent(new BookCopy(book, new DateTime(2015, 5, 23), "1234567890123"), new Reader("Joe", "Biden"), new DateTime(2017, 4, 4))); Assert.AreEqual(repository.GetBookEvent(1), new Rent(new BookCopy(book3, new DateTime(2003, 5, 27), "5234567890123"), new Reader("Dominik", "Karski"), new DateTime(2017, 11, 6))); Assert.AreEqual(repository.GetBookEvent(2), new Rent(new BookCopy(book1, new DateTime(2012, 2, 1), "3234567890123"), new Reader("Sebastian", "Kujawski"), new DateTime(2018, 3, 3))); Assert.AreEqual(repository.GetBookEvent(3), new Rent(new BookCopy(book, new DateTime(2005, 2, 22), "2234567890123"), new Reader("Donald", "Trump"), new DateTime(2018, 4, 4))); Assert.AreEqual(repository.GetBookEvent(4), new Rent(new BookCopy(book2, new DateTime(1999, 1, 13), "4234567890123"), new Reader("Joe", "Biden"), new DateTime(2020, 5, 5))); Assert.AreEqual(repository.GetBookEvent(5), new Return(new BookCopy(book, new DateTime(2015, 5, 23), "1234567890123"), new Reader("Joe", "Biden"), new DateTime(2020, 10, 10))); Assert.AreEqual(repository.GetBookEvent(6), new Return(new BookCopy(book, new DateTime(2005, 2, 22), "2234567890123"), new Reader("Donald", "Trump"), new DateTime(2020, 11, 6))); }
public void CreateBookSuccessTest() { var faker = new Faker(); var author = new Author(FullName.Create(faker.Name.FirstName(), faker.Name.LastName()).Value); var bookCategory = BookCategory.Create(CategoryBook.Business, faker.Locale); var bookDescription = BookDescription.Create(faker.Locale, faker.Date.Random.Number(1, DateTime.Now.Year)); var bookIsbn = Isbn.Create(TypeIsbn.Isbn10, "ISBN 1-58182-008-9"); var book = new Books(author, bookCategory.Value, bookDescription.Value, bookIsbn.Value); Assert.NotNull(book); }
public void GetBookDescriptionTest() { DataRepository dataRepository = new DataRepository(); var MockBookDescription = RandomBookDescription(); dataRepository.AddBookDescription(MockBookDescription.Object); BookDescription bookDescription = dataRepository.GetBookDescription(0); Assert.AreEqual(bookDescription, MockBookDescription.Object); }
public void ShouldCreate( BookId bookId, Language language, BookDescription description) { var sut = new Book(bookId, language, description); var state = sut.GetState(); Assert.Equal(bookId, state.BookId); Assert.Equal(language, state.Language); Assert.Equal(description, state.Description); }
public void getEventWithGoodId() { DataRepository dataRepository = this.CreateDataRepository(); Person reader = new Reader("", "", 0, ""); Item book = new Book("", null, 0, ""); StateDescription state = new BookDescription(book, "", new DateTime(1990, 1, 1), Purpose.All, Kind.Criminal); Event ev = new Rental(state, reader, DateTime.Now); dataRepository.addEvent(ev); Assert.AreEqual <Event>(ev, dataRepository.getEvent(0)); }
public ActionResult <BookDescription> GetDescription(string descriptionId) { BookDescription description = bookService.FindDescriptionById(descriptionId); if (description == null) { return(NotFound()); } return(description); }
public override void DeleteBookDescription(BookDescription bookDescription) { var y = bookDescription ?? throw new ArgumentNullException(); foreach (BookCopy x in _dataContext.BookCopies) { if (x.Book.Equals(y)) { return; } } _dataContext.BookDescriptions.Remove(y.Title); }
public void CanSerializeBookDescription() { var description = new BookDescription { Book = BibleBook.Genesis, VerseCountsByChapter = new Dictionary <int, int> { { 1, 31 }, { 2, 25 } } }; var json = JsonSerializer.Serialize(description); Assert.AreEqual("{\"book\":\"Genesis\",\"verse_count_by_chapter\":{\"1\":31,\"2\":25}}", json); }
public void DeleteBookDescriptionConsistencyTest() { Assert.AreEqual(repository.GetAllBookDescriptions().Count(), 5); repository.DeleteBookDescription(repository.GetBookCopy(0).Book); Assert.AreEqual(repository.GetAllBookDescriptions().Count(), 5); var book = new BookDescription("Książka", "Bezimienny", "Null"); repository.AddBookDescription(book); Assert.AreEqual(repository.GetAllBookDescriptions().Count(), 6); repository.DeleteBookDescription(book); Assert.AreEqual(repository.GetAllBookDescriptions().Count(), 5); }
public void GetDescriutionTest() { XDocument fb2 = XDocument.Load(InputPath); BookDescription description = fb2.GetDescription(); Assert.AreEqual(BookAuthorFirstNameInitial, description.BookAuthorFirstName); Assert.AreEqual(BookAuthorFamilyNameInitial, description.BookAuthorFamilyName); Assert.AreEqual(TitleInitial, description.Title); Assert.AreEqual(FileAuthorFirstNameInitial, description.FileAuthorFirstName); Assert.AreEqual(FileAuthorFamilyNameInitial, description.FileAuthorFamilyName); CollectionAssert.AreEqual(_programsUsedInitial, description.ProgramsUsed); Assert.AreEqual(_dateInitial, description.Date); }
public void BorrowConstructNull() { BookDescription description = null; Reader reader = null; try { Borrow borrow = new Borrow(reader, description); } catch (ArgumentNullException) { } catch (Exception) { Assert.Fail(); } }
public void updateEventWithGoodId() { DataRepository dataRepository = this.CreateDataRepository(); Person reader1 = new Reader("", "", 0, ""); Person reader2 = new Reader("", "", 0, ""); Item book1 = new Book("", null, 0, ""); Item book2 = new Book("", null, 0, ""); StateDescription state1 = new BookDescription(book1, "", new DateTime(1990, 1, 1), Purpose.All, Kind.Criminal); StateDescription state2 = new BookDescription(book2, "", new DateTime(1990, 1, 1), Purpose.All, Kind.Criminal); Event ev1 = new Rental(state1, reader1, DateTime.Now); Event ev2 = new Rental(state2, reader2, DateTime.Now); dataRepository.addEvent(ev1); Assert.AreEqual <Event>(ev1, dataRepository.getEvent(0)); dataRepository.updateEvent(0, ev2); Assert.AreEqual <Event>(ev2, dataRepository.getEvent(0)); }
public void UpdateBookDescriptionTest() { //preperation is the same as in addBook DataRepository dataRepository = new DataRepository(); var MockBookDescription = RandomBookDescription(); dataRepository.AddBookDescription(MockBookDescription.Object); BookDescription bookkDescription = dataRepository.GetBookDescription(0); Assert.AreEqual(bookkDescription, MockBookDescription.Object); //test if book can be changed var MockBookDescription2 = RandomBookDescription(); dataRepository.UpdateBookDescription(0, MockBookDescription2.Object); Assert.AreEqual(MockBookDescription2.Object, dataRepository.GetBookDescription(0)); }
public void SetDescriutionTest() { XDocument fb2 = XDocument.Load(InputPath); BookDescription description = fb2.GetDescription(); description.Fill(BookAuthorFirstName, BookAuthorFamilyName, Title, FileAuthorFirstName, FileAuthorFamilyName, ProgramName); fb2.SetDescription(description); description = fb2.GetDescription(); Assert.AreEqual(BookAuthorFirstName, description.BookAuthorFirstName); Assert.AreEqual(BookAuthorFamilyName, description.BookAuthorFamilyName); Assert.AreEqual(Title, description.Title); Assert.AreEqual(FileAuthorFirstName, description.FileAuthorFirstName); Assert.AreEqual(FileAuthorFamilyName, description.FileAuthorFamilyName); CollectionAssert.AreEqual(_programsUsed, description.ProgramsUsed); Assert.AreEqual(_date, description.Date); }
public ConstDataHolder() { Readers = new List <Reader>(); Readers.Add(new Reader("Dominik", "Karski")); Readers.Add(new Reader("Sebastian", "Kujawski")); Readers.Add(new Reader("Joe", "Biden")); Readers.Add(new Reader("Donald", "Trump")); BookDescriptions = new List <BookDescription>(); var book = new BookDescription("Metro 2033", "Dmitry Glukhovsky", "Insignis"); BookDescriptions.Add(book); var book1 = new BookDescription("Diuna", "Frank Herbert", "Rebis"); BookDescriptions.Add(book1); var book2 = new BookDescription("Harry Potter", "J.K.Rowling", "Media Rodzina"); BookDescriptions.Add(book2); var book3 = new BookDescription("Pan Lodowego Ogrodu (tom 1)", "Jarosław Grzędowicz", "Fabryka Słów"); BookDescriptions.Add(book3); var book4 = new BookDescription("Pan Lodowego Ogrodu (tom 2)", "Jarosław Grzędowicz", "Fabryka Słów"); BookDescriptions.Add(book4); BookCopies = new List <BookCopy>(); BookCopies.Add(new BookCopy(book, new DateTime(2015, 5, 23), "1234567890123")); BookCopies.Add(new BookCopy(book, new DateTime(2005, 2, 22), "2234567890123")); BookCopies.Add(new BookCopy(book1, new DateTime(2012, 2, 1), "3234567890123")); BookCopies.Add(new BookCopy(book2, new DateTime(1999, 1, 13), "4234567890123")); BookCopies.Add(new BookCopy(book3, new DateTime(2003, 5, 27), "5234567890123")); BookEvents = new List <BookEvent>(); BookEvents.Add(new Rent(BookCopies[0], Readers[2], new DateTime(2017, 4, 4))); BookEvents.Add(new Rent(BookCopies[4], Readers[0], new DateTime(2017, 11, 6))); BookEvents.Add(new Rent(BookCopies[2], Readers[1], new DateTime(2018, 3, 3))); BookEvents.Add(new Rent(BookCopies[1], Readers[3], new DateTime(2018, 4, 4))); BookEvents.Add(new Rent(BookCopies[3], Readers[2], new DateTime(2020, 5, 5))); BookEvents.Add(new Return(BookCopies[0], Readers[2], new DateTime(2020, 10, 10))); BookEvents.Add(new Return(BookCopies[1], Readers[3], new DateTime(2020, 11, 6))); }
public void DeleteBookDescriptionTest() { DataRepository dataRepository = new DataRepository(); var MockBookDescription = RandomBookDescription(); dataRepository.AddBookDescription(MockBookDescription.Object); BookDescription bookDescription = dataRepository.GetBookDescription(0); Assert.AreEqual(bookDescription, MockBookDescription.Object); dataRepository.DeleteBookDescription(0); //Test reflected object var data = typeof(DataRepository).GetField("Data", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); DataContext dataContext = (DataContext)data.GetValue(dataRepository); Assert.AreEqual(0, dataContext.Books.Count()); //Test object given by getAllBooks method Assert.AreEqual(0, dataRepository.GetAllBookDescriptions().Count()); }
public LargeDataFillerImpl() { people = new List <Person>(); items = new Dictionary <string, Item>(); states = new List <StateDescription>(); events = new ObservableCollection <Event>(); for (int i = 0; i < 10; i++) { Author author = new Author(randomString(), randomString(), random.Next(100), randomString()); Reader reader = new Reader(randomString(), randomString(), random.Next(100), randomString()); people.Add(author); people.Add(reader); Book book = new Book(randomString(), author, random.Next(1000), randomString()); items.Add(book.Id, book); BookDescription state = new BookDescription(book, randomString(), new DateTime(random.Next(1500, 2000), random.Next(1, 12), random.Next(1, 27)), Purpose.All, Kind.Criminal); states.Add(state); events.Add(new Rental(state, reader, DateTime.Now)); } }
public abstract void DeleteBookDescription(BookDescription bookDescription);
public abstract void AddBookDescription(BookDescription bookDescription);
public static DataContext Deserialize(string filename) { DataContext dataContext = new DataContext(); SerializeHelper helper = new SerializeHelper(); string data = System.IO.File.ReadAllText(filename); var dataList = data.Split('\n'); for (int i = 0; i < dataList.Length; i++) { if (!string.IsNullOrEmpty(dataList[i])) { var splittedLine = dataList[i].Split(','); Type type = Type.GetType(splittedLine[0]); if (type != null) { object obj = Activator.CreateInstance(type); switch (helper.typeDict[type]) { case 0: Person person = (Person)obj; if (!person.Deserialize(splittedLine, helper)) { break; } helper.PeopleDictionary.Add(splittedLine[1], person); dataContext.PeopleCatalog.Add(person); break; case 1: Reader reader = (Reader)obj; if (!reader.Deserialize(splittedLine, helper)) { break; } helper.PeopleDictionary.Add(splittedLine[1], reader); dataContext.PeopleCatalog.Add(reader); break; case 2: Author author = (Author)obj; if (!author.Deserialize(splittedLine, helper)) { break; } helper.PeopleDictionary.Add(splittedLine[1], author); dataContext.PeopleCatalog.Add(author); break; case 3: Item item = (Item)obj; if (!item.Deserialize(splittedLine, helper)) { break; } helper.ItemsDictionary.Add(splittedLine[1], item); dataContext.ItemsCatalog.Add(item.Id, item); break; case 4: Book book = (Book)obj; if (!book.Deserialize(splittedLine, helper)) { break; } helper.ItemsDictionary.Add(splittedLine[1], book); dataContext.ItemsCatalog.Add(book.Id, book); break; case 5: StateDescription stateDescription = (StateDescription)obj; if (!stateDescription.Deserialize(splittedLine, helper)) { break; } helper.StatesDictionary.Add(splittedLine[1], stateDescription); dataContext.StatesCatalog.Add(stateDescription); break; case 6: BookDescription bookDescription = (BookDescription)obj; if (!bookDescription.Deserialize(splittedLine, helper)) { break; } helper.StatesDictionary.Add(splittedLine[1], bookDescription); dataContext.StatesCatalog.Add(bookDescription); break; case 7: Event ev = (Event)obj; if (!ev.Deserialize(splittedLine, helper)) { break; } dataContext.EventsCatalog.Add(ev); break; case 8: Rental rental = (Rental)obj; if (!rental.Deserialize(splittedLine, helper)) { break; } dataContext.EventsCatalog.Add(rental); break; } } } } return(dataContext); }