public void TestGetBookTitlesForAuthor() { var authors = new List <Author>() { new Author("AuthorA"), new Author("AuthorB"), }; var book1 = new Book("BookTitle1", authors); var book2 = new Book("BookTitle2", new List <Author>() { authors[0] }); var books = new List <Book>() { book1, book2 }; bookDatabase = new BookDatabase(books); try { var bookTitles = bookDatabase.GetBookTitlesForAuthor(authors[0].Name); Assert.AreEqual(2, bookTitles.Count); var titles = books.Select(a => a.Title).ToList(); CollectionAssert.AreEquivalent(titles, bookTitles); } catch (Exception e) { Assert.Fail("Getting book titles for author should not fail when author exists"); } }
public void TestGetAuthorsForBook() { var authors = new List <Author>() { new Author("AuthorA"), new Author("AuthorB"), }; var book = new Book("BookTitle", authors); bookDatabase = new BookDatabase(new List <Book>() { book }); try { var bookAuthors = bookDatabase.GetAuthorsForBook(book.Title); Assert.AreEqual(2, bookAuthors.Count); var authorNames = authors.Select(a => a.Name).ToList(); CollectionAssert.AreEquivalent(authorNames, bookAuthors); } catch (Exception e) { Assert.Fail("Getting authors should not fail when book exists"); } }
private void updateStateDorm(object sender, string msg, int state) { Button button = sender as Button; BookDorm dorm = button.DataContext as BookDorm; if (BookDatabase.UpdateDormWhenBook(dorm.EmailOwner, dorm.EmailUser, dorm.IdDorm, state)) { if (BookDatabase.DeleteDormWhenBook(dorm.EmailOwner, dorm.EmailUser, dorm.IdDorm)) { Helpers.MakeConfirmMessage(Window.GetWindow(this), $"The Dorm has been {msg} to { dorm.EmailUser}", "Notify"); int count = DormDatabase.GetCount(dorm.IdDorm) + 1; DormDatabase.UpdateCountDorm(dorm.IdDorm, count); MainControl mainControl = (MainControl)Window.GetWindow(this); mainControl.MainHomeLayout.Children.Clear(); mainControl.MainHomeLayout.VerticalAlignment = VerticalAlignment.Top; mainControl.MainHomeLayout.HorizontalAlignment = HorizontalAlignment.Left; mainControl.MainHomeLayout.Width = 1150; mainControl.MainHomeLayout.Height = 720; mainControl.MainHomeLayout.Children.Add(new MyDorm(mainControl.user)); } else { Helpers.MakeErrorMessage(Window.GetWindow(this), $"Failed {msg} to {dorm.EmailUser}", "Error"); } } }
public ActionResult StartIndex() { //return RedirectToAction("AccountPage", "Account"); BookDatabase db = new BookDatabase(); return(View("Index", db)); }
private void ConfigureDatabase() { string pathToDatabase = System.IO.Path.Combine(book.Path, "Data"); System.IO.Directory.CreateDirectory(pathToDatabase); database = new BookDatabase(pathToDatabase); }
public void TestGetBookTitlesForAuthorThatDoesntExist() { var authors = new List <Author>() { new Author("AuthorA"), new Author("AuthorB"), }; var book = new Book("BookTitle", authors); bookDatabase = new BookDatabase(new List <Book>() { book }); try { bookDatabase.GetBookTitlesForAuthor(authors[0].Name + "1111"); Assert.Fail("Should throw exception when the author doesn't exist"); } catch (ArgumentException) { } catch (Exception e) { Assert.Fail("Should throw ArgumentException"); } }
public void Save() { MessageBox.Show("Buch gespeichert!"); var book = new Book(SelectedBook.ISBN, SelectedBook.Publisher, SelectedBook.Name, SelectedBook.Author, SelectedBook.Description); BookDatabase.SaveBook(book); }
private void initBookDorm() { try { BookDorm bookDorm = new BookDorm(); bookDorm.EmailOwner = owner.Email; bookDorm.EmailUser = user.Email; bookDorm.IdDorm = dorm.Id; bookDorm.StateDorm = 1; bookDorm = BookDatabase.GetItem(bookDorm); if (bookDorm.StateDorm == 0) { spinnerBook.Visibility = Visibility.Collapsed; btnBooked.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#2DCA73")); btnBooked.IsEnabled = true; } else if (bookDorm.StateDorm == 1) { spinnerBook.Visibility = Visibility.Visible; btnBooked.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#A2D8E9")); btnBooked.IsEnabled = true; } else { spinnerBook.Visibility = Visibility.Collapsed; btnBooked.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#F0F0F0")); btnBooked.IsCancel = true; } lbStateBook.Content = Helpers.ConvertStateToText(bookDorm.StateDorm); } finally { } }
private void Button_Click(object sender, RoutedEventArgs e) { TransitioningContentSlide.ApplyTemplate(); layoutDorm.Children.Clear(); layoutDorm.VerticalAlignment = VerticalAlignment.Top; layoutDorm.HorizontalAlignment = HorizontalAlignment.Left; layoutDorm.Width = 1150; layoutDorm.Height = 720; if (handlerArrowLeft == 0) { layoutDorm.Children.Add(new HomeControl(user)); } else if (handlerArrowLeft == 1) { layoutDorm.Children.Add(new MyDorm(user)); } else if (handlerArrowLeft == 2) { layoutDorm.Children.Add(new MyDorm(BookDatabase.GetUserDorm(user.Email, dorm.Id))); } else { layoutDorm.Children.Add(new LikedDorm(LikeDatabase.GetAllListDormByEmail(user.Email), user)); } }
private void btnDelete_Click(object sender, RoutedEventArgs e) { Button button = sender as Button; Dorm dorm = button.DataContext as Dorm; MessageBoxResult result = MessageBox.Show("Would you like to delete this dorm?", "Notify", MessageBoxButton.YesNo); switch (result) { case MessageBoxResult.Yes: if (DormDatabase.Delete(dorm.Id)) { BookDatabase.DeleteByIdDorm(dorm.Id); OwnerDormDatabase.DeleteByDormId(dorm.Id); LikeDatabase.DeleteById(dorm.Id); CommentDatabase.DeleteByIdDorm(dorm.Id); MainControl mainControl = (MainControl)Window.GetWindow(this); mainControl.MainHomeLayout.Children.Clear(); mainControl.MainHomeLayout.VerticalAlignment = VerticalAlignment.Top; mainControl.MainHomeLayout.HorizontalAlignment = HorizontalAlignment.Left; mainControl.MainHomeLayout.Width = 1150; mainControl.MainHomeLayout.Height = 720; mainControl.MainHomeLayout.Children.Add(new MyDorm(mainControl.user)); } break; } }
public void Delete() { MessageBox.Show("Buch gelöscht!"); Books.Remove(SelectedBook); var book = new Book(SelectedBook.ISBN, SelectedBook.Publisher, SelectedBook.Name, SelectedBook.Author, SelectedBook.Description); BookDatabase.DeleteBook(book); }
public static BookDatabase getInstance() { if (_bookDatabase == null) { _bookDatabase = new BookDatabase(); } return(_bookDatabase); }
private void btnBooked_Click(object sender, RoutedEventArgs e) { if (user.Email.Equals(owner.Email)) { Helpers.MakeErrorMessage(Window.GetWindow(this), "You are owner so can't book dorm", "Error"); } else if (!BookDatabase.GetEmailBookDorm(owner.Email, dorm.Id).Equals("No")) { if (BookDatabase.GetEmailBookDorm(owner.Email, dorm.Id).Equals(user.Email)) { Helpers.MakeConfirmMessage(Window.GetWindow(this), "Dorm was booked by you", "Notify"); } else { Helpers.MakeErrorMessage(Window.GetWindow(this), "Dorm was booked by " + BookDatabase.GetEmailBookDorm(owner.Email, dorm.Id), "Error"); } } else { BookDorm bookDorm = new BookDorm(); bookDorm.EmailOwner = owner.Email; bookDorm.EmailUser = user.Email; bookDorm.IdDorm = dorm.Id; bookDorm.StateDorm = 1; if (BookDatabase.Insert(bookDorm)) { spinnerBook.Visibility = Visibility.Visible; btnBooked.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#A2D8E9")); lbStateBook.Content = "Booking..."; } else { bookDorm = BookDatabase.GetItem(bookDorm); if (bookDorm.StateDorm == 0) { spinnerBook.Visibility = Visibility.Visible; btnBooked.IsEnabled = true; btnBooked.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#A2D8E9")); bookDorm.StateDorm = 1; BookDatabase.Update(bookDorm); } else if (bookDorm.StateDorm == 1) { spinnerBook.Visibility = Visibility.Collapsed; btnBooked.IsEnabled = true; btnBooked.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#2DCA73")); bookDorm.StateDorm = 0; BookDatabase.Update(bookDorm); } lbStateBook.Content = Helpers.ConvertStateToText(bookDorm.StateDorm); } } }
private void initState() { list = BookDatabase.GetAllWattingBook(owner.Email, true); if (list.Count != 0) { notifyMyDorm.Visibility = System.Windows.Visibility.Visible; } else { notifyMyDorm.Visibility = System.Windows.Visibility.Collapsed; } }
protected override void OnInitializeInRuntime() { Books = new ObservableCollection <BookViewModel>(); var books = BookDatabase.GetBooks(); foreach (var book in books) { BookViewModel vm = new BookViewModel(book.ISBN, book.Publisher, book.Name, book.Author, book.Description); Books.Add(vm); } base.OnInitializeInRuntime(); }
private void listViewDormBook_SelectionChanged(object sender, SelectionChangedEventArgs e) { BookDorm dormB = listViewDormBook.SelectedItem as BookDorm; Dorm dorm = DormDatabase.Get(dormB.IdDorm); MainControl mainControl = (MainControl)Window.GetWindow(this); mainControl.MainHomeLayout.Children.Clear(); TransitioningContentSlide.OnApplyTemplate(); mainControl.MainHomeLayout.VerticalAlignment = VerticalAlignment.Top; mainControl.MainHomeLayout.HorizontalAlignment = HorizontalAlignment.Left; mainControl.MainHomeLayout.Width = 1150; mainControl.MainHomeLayout.Height = 720; mainControl.MainHomeLayout.Children.Add(new ShowDorm(dorm, BookDatabase.GetOwnerByIdDorm(dorm.Id), 2)); }
public void TestDeleteBooksByAuthorSuccess_Multi() { var authors = new List <Author>() { new Author("AuthorA"), new Author("AuthorB"), }; var book = new Book("BookTitle", authors); bookDatabase = new BookDatabase(new List <Book>() { book }); try { bookDatabase.DeleteBooksByAuthor(authors[0].Name, true); } catch (Exception e) { Assert.Fail(); } // Check book title try { bookDatabase.GetAuthorsForBook(book.Title); Assert.Fail("Book should not exist anymore"); } catch (ArgumentException) { } catch (Exception) { Assert.Fail("Should throw ArgumentException"); } // Check authors try { bookDatabase.GetBookTitlesForAuthor(authors[0].Name); Assert.Fail("Book should not exist anymore"); } catch (ArgumentException) { } catch (Exception) { Assert.Fail("Should throw ArgumentException"); } }
public ActionResult Index(BookDatabase model) { BookDatabase db; //return RedirectToAction("AccountPage", "Account"); if (!model.SearchTerm.IsEmpty()) { db = new BookDatabase(model.SearchTerm, model.SearchSection); } else { db = new BookDatabase(); } return(View(db)); }
private void btnComment_Click(object sender, RoutedEventArgs e) { if (user.Email.Equals(owner.Email)) { Helpers.MakeErrorMessage(Window.GetWindow(this), "You are owner so can't rating", "Error"); } else { if (BookDatabase.GetEmailBookDorm(owner.Email, dorm.Id).Equals(user.Email)) { ValueRating = ratingBar.Value; Comment = tbComment.Text.Trim(); if (ValueRating == 0) { Helpers.MakeErrorMessage(Window.GetWindow(this), "You must rating dorm ", "Error"); } else { if (CommentDatabase.Insert(owner.Email, dorm.Id, user.Email, Comment, ValueRating)) { Helpers.MakeConfirmMessage(Window.GetWindow(this), "Thanks you bro", "Notify"); if (CommentDatabase.GetAvgRating(owner.Email, dorm.Id) != -1) { DormDatabase.UpdateRating(dorm.Id, CommentDatabase.GetAvgRating(owner.Email, dorm.Id)); dorm.Quality = (dorm.Quality + ValueRating) / DormDatabase.GetCount(dorm.Id); MainControl mainControl = (MainControl)Window.GetWindow(this); mainControl.MainHomeLayout.Children.Clear(); mainControl.MainHomeLayout.VerticalAlignment = VerticalAlignment.Top; mainControl.MainHomeLayout.HorizontalAlignment = HorizontalAlignment.Left; mainControl.MainHomeLayout.Width = 1150; mainControl.MainHomeLayout.Height = 720; mainControl.MainHomeLayout.Children.Add(new ShowDorm(dorm, user, 1)); } } else { Helpers.MakeErrorMessage(Window.GetWindow(this), "You already rating this dorm", "Error"); } } } else { Helpers.MakeErrorMessage(Window.GetWindow(this), "You can't comment because you have never book this dorm", "Error"); } } }
public ExampleMvvmLibraryViewModel() { var books = BookDatabase.GetExampleBooks(); foreach (var book in books) { ExampleMvvmBookViewModel vm = new ExampleMvvmBookViewModel() { ISBN = book.ISBN, Author = book.Author, Name = book.Name, Publisher = book.Publisher }; Books.Add(vm); } SaveCommand = new ButtonCommand(obj => SaveCommandExecute(), () => SaveCommandCanExecute()); DeleteCommand = new ButtonCommand(obj => DeleteCommandExecute(), () => DeleteCommandCanExecute()); }
public void TestInitialiseWithBooks() { var authors = new List <Author>() { new Author("AuthorA"), new Author("AuthorB"), }; var book = new Book("BookTitle", authors); var bookDatabase = new BookDatabase(new List <Book>() { book }); var bookAuthors = bookDatabase.GetAuthorsForBook(book.Title); Assert.AreEqual(2, bookAuthors.Count); var bookTitles = bookDatabase.GetBookTitlesForAuthor(authors[0].Name); Assert.AreEqual(1, bookTitles.Count); bookTitles = bookDatabase.GetBookTitlesForAuthor(authors[1].Name); Assert.AreEqual(1, bookTitles.Count); }
public void TestDeleteBookThatDoesntExist() { var authors = new List <Author>() { new Author("AuthorA"), new Author("AuthorB"), }; var book = new Book("BookTitle", authors); bookDatabase = new BookDatabase(new List <Book>() { book }); try { bookDatabase.DeleteBook(book.Title + "1111"); } catch (Exception e) { Assert.Fail("Delete book operation should not fail when deleting a non-existent book"); } }
private void btnCanel_Click(object sender, RoutedEventArgs e) { Button button = sender as Button; BookDorm dormB = button.DataContext as BookDorm; Dorm dorm = DormDatabase.Get(dormB.IdDorm); MainControl mainControl = (MainControl)Window.GetWindow(this); MessageBoxResult result = MessageBox.Show("Would you like to cancel booking this dorm?", "Notify", MessageBoxButton.YesNo); switch (result) { case MessageBoxResult.Yes: if (BookDatabase.DeleteDormWhenBookUser(mainControl.user.Email, dorm.Id)) { mainControl.MainHomeLayout.Children.Clear(); mainControl.MainHomeLayout.VerticalAlignment = VerticalAlignment.Top; mainControl.MainHomeLayout.HorizontalAlignment = HorizontalAlignment.Left; mainControl.MainHomeLayout.Width = 1150; mainControl.MainHomeLayout.Height = 720; mainControl.MainHomeLayout.Children.Add(new MyDorm(mainControl.user)); } break; } }
public void TestDeleteBooksByAuthorThatDoesntExist() { var authors = new List <Author>() { new Author("AuthorA"), new Author("AuthorB"), }; var book = new Book("BookTitle", authors); bookDatabase = new BookDatabase(new List <Book>() { book }); try { bookDatabase.DeleteBooksByAuthor(authors[0].Name + "1111", true); bookDatabase.DeleteBooksByAuthor(authors[0].Name + "1111", false); } catch (Exception e) { Assert.Fail("Delete books by author operation should not fail when deleting those by an unknown author"); } }
private void btnDormWating_Click(object sender, RoutedEventArgs e) { layoutControl.Children.Clear(); TransitioningContentSlide.OnApplyTemplate(); layoutControl.Children.Add(new WaittingScreen(BookDatabase.GetAllWattingBook(owner.Email, false))); }
public RentalsController(BookDatabase context) { _context = context; }
public Academic() { _bookDatabase = BookDatabase.getInstance(); }
protected override void OnInitializeInRuntime() { base.OnInitializeInRuntime(); Books = BookDatabase.GetExampleBooks(); }
public Library() { _bookDatabase = BookDatabase.getInstance(); }
public void SetUp() { bookDatabase = new BookDatabase(); }