$app->register(new Silex\Provider\TwigServiceProvider(), array('twig.path' => __DIR__ . '/../views')); $app->get("/", function () use($app) { return $app['twig']->render('index.html.twig'); }); $app->get("/librarian", function () use($app) { return $app['twig']->render('librarian.html.twig', array('books' => Book::getAll(), 'authors' => Author::getAll())); }); $app->post("/librarian", function () use($app) { $title = $_POST['title']; $book = new Book($title); $book->save(); $name = $_POST['author']; $author = new Author($name); $author->save(); $book->addAuthor($author); $book->addCopy($_POST['copies']); return $app['twig']->render('librarian.html.twig', array('books' => Book::getAll())); }); $app->delete("/book/{id}/delete", function ($id) use($app) { $book = Book::find($id); $book->deleteBook(); return $app['twig']->render('librarian.html.twig', array('books' => Book::getAll(), 'authors' => Author::getAll())); }); $app->get("/book/{id}/edit", function ($id) use($app) { $book = Book::find($id); return $app['twig']->render("edit_book.html.twig", array("book" => $book)); }); $app->patch("/book/{id}", function ($id) use($app) { $book = Book::find($id); if (!empty($_POST['title'])) { $new_title = $_POST['title'];
function test_countCopies() { //Arrange $title = "Growing up Casalino: the Big Ben story"; $id = 1; $test_book = new Book($title, $id); $test_book->save(); //Act $test_book->addCopy(4); //Assert $result = $test_book->countCopies(); $this->assertEquals($result, 4); }
function test_addCopy() { $name = "Big Lebowski"; $test_book = new Book($name); $test_book->save(); $test_book->addCopy(); $test_book->addCopy(); $result = $test_book->getCopies(); $this->assertEquals(2, count($result)); }
function test_addCheckout() { $name = "Big Lebowski"; $test_book = new Book($name); $test_book->save(); $test_book->addCopy(); $copies = $test_book->getCopies(); $patron_name = "Big Lebowski"; $test_patron = new Patron($patron_name); $test_patron->save(); $test_patron->addCheckout($copies[0]); $result = $test_patron->getCheckouts(); $this->assertEquals(1, count($result)); }
function testGetInventory() { //Arrange $title = "Where the Red Fern Grows"; $title2 = "Clowns"; $title3 = "Puppes"; $id = null; $test_book = new Book($title, $id); $test_book2 = new Book($title2, $id); $test_book3 = new Book($title3, $id); $test_book->save(); $test_book2->save(); $test_book3->save(); //Act $test_book->addCopy(); $test_book2->addCopy(); $test_book3->addCopy(); $collection_of_cooks = Book::getAll(); $result = Book::getInventory($collection_of_books); //Assert $this->assertEquals(array($title, $title2, $title3), $result); }