def __loadRepo(self):
     self.__loadFileReadMode()
     for line in self.__file:
         splitLine = line.split()
         movieToAdd = MovieDAO(splitLine[1], splitLine[2], splitLine[3])
         movieToAdd.setMovieId(int(splitLine[0]))
         super().addMovieWithId(movieToAdd)
     self.__closeFile()
Esempio n. 2
0
    def test_undoUpdateMovie(self):
        updatedMovie = MovieDAO("a", "a", "a")
        updatedMovie.setMovieId(0)
        self.undoRunner.addCommandToUndo(["update", "0", "a", "a", "a"], self.movieController, self.stack, "movie", self.commandsStack)

        self.movieController.updateMovieWithId(0, updatedMovie)
        self.assertEqual(self.movieController.getMovieWithId(0).getTitle(), "a")
        self.undoRunner.undo(self.clientController, self.movieController, self.rentalController, self.stack)
        self.assertEqual(self.movieController.getMovieWithId(0).getTitle(), "Titanic")
Esempio n. 3
0
 def setUp(self):
     self.movieRepo = MovieRepo()
     self.movieRepo.addMovie(MovieDAO("Titanic", "lovely", "Romance"))
     self.movieRepo.addMovie(MovieDAO("Avatar", "lovely1", "Romance1"))
     self.movieRepo.addMovie(MovieDAO("TestMovie", "lovely1", "Romance1"))
     self.clientRepo = ClientRepo()
     self.clientRepo.addClient(ClientDAO("dani"))
     self.clientRepo.addClient(ClientDAO("ancu"))
     self.rentalRepo = RentalRepo()
     self.rentalRepo.addRental(RentalDAO(0, 0, Date(5, 4, 2018), Date(7, 9, 2020), self.movieRepo, self.clientRepo))
     self.rentalRepo.addRental(RentalDAO(1, 1, Date(5, 4, 2018), Date(7, 9, 2020), self.movieRepo, self.clientRepo))
     self.printer = Printer()
 def test_addMovie(self):
     self.movieRepo.addMovie(MovieDAO("dani", "great", "nice"))
     self.movieRepo.addMovie(MovieDAO("titanic", "description", "genre"))
     self.assertEqual((self.movieRepo.getList()[0]).getId(), 0)
     self.assertEqual((self.movieRepo.getList()[0]).getTitle(), "dani")
     self.assertEqual((self.movieRepo.getList()[0]).getDescription(),
                      "great")
     self.assertEqual((self.movieRepo.getList()[0]).getGenre(), "nice")
     self.assertEqual((self.movieRepo.getList()[1]).getId(), 1)
     self.assertEqual((self.movieRepo.getList()[1]).getTitle(), "titanic")
     self.assertEqual((self.movieRepo.getList()[1]).getDescription(),
                      "description")
     self.assertEqual((self.movieRepo.getList()[1]).getGenre(), "genre")
 def test_init(self):
     with self.assertRaises(ValueError):
         testMovie = MovieDAO(1, "dfa", "fasd")
     with self.assertRaises(ValueError):
         testMovie = MovieDAO("asd", [], "fasd")
     with self.assertRaises(ValueError):
         testMovie = MovieDAO("sdf", "fsda", 6.5)
     with self.assertRaises(ValueError):
         testMovie = MovieDAO(1, "dfa", [])
     with self.assertRaises(ValueError):
         testMovie = MovieDAO(1, [], {"6": 5})
     self.assertEqual(self.movie.getTitle(), "Titanic", 'movie title got wrong')
     self.assertEqual(self.movie.getDescription(), "lovely", 'movie description got wrong')
     self.assertEqual(self.movie.getGenre(), "romance", 'movie genre got wrong')
     self.assertRaises(TypeError, lambda: self.movie.getId(), 'default movie id not None')
Esempio n. 6
0
    def test_undoAddMovie(self):
        self.undoRunner.addCommandToUndo(["add", "a", "a", "a"], self.movieController, self.stack, "movie", self.commandsStack)
        self.movieController.addMovie(MovieDAO("a", "a", "a"))
        self.undoRunner.addCommandToUndo(["add", "b", "b", "b"], self.movieController, self.stack, "movie", self.commandsStack)

        self.movieController.addMovie(MovieDAO("b", "b", "b"))
        self.printer.printList(self.movieController.getMovieList())
        print()
        self.assertEqual(len(self.movieController.getRepo().getList()), 14)
        self.assertEqual(self.movieController.getMovieWithId(13).getTitle(), "b")
        self.undoRunner.undo(self.clientController, self.movieController, self.rentalController, self.stack)
        self.printer.printList(self.movieController.getMovieList())
        self.assertEqual(len(self.movieController.getRepo().getList()), 13)
        with self.assertRaises(ObjectNotInCollectionException):
            self.movieController.getMovieWithId(13)
Esempio n. 7
0
 def setUp(self):
     self.movieRepo = MovieRepo()
     self.movieRepo.addMovie(MovieDAO("Titanic", "lovely", "Romance"))
     self.clientRepo = ClientRepo()
     self.clientRepo.addClient(ClientDAO("dani"))
     self.rental = RentalDAO(0, 0, Date(5, 4, 2018), Date(7, 9, 2020),
                             self.movieRepo, self.clientRepo)
 def test_addMovie(self):
     self.movieBinaryRepository.addMovie(MovieDAO("dani", "great", "nice"))
     self.movieBinaryRepository.addMovie(
         MovieDAO("titanic", "description", "genre"))
     self.assertEqual(
         (self.movieBinaryRepository.getMovieWithId(0)).getId(), 0)
     self.assertEqual(
         (self.movieBinaryRepository.getMovieWithId(0)).getTitle(), "dani")
     self.assertEqual(
         (self.movieBinaryRepository.getMovieWithId(0)).getDescription(),
         "great")
     self.assertEqual(
         (self.movieBinaryRepository.getMovieWithId(0)).getGenre(), "nice")
     self.assertEqual(
         (self.movieBinaryRepository.getMovieWithId(1)).getId(), 1)
     self.assertEqual(
         (self.movieBinaryRepository.getMovieWithId(1)).getTitle(),
         "titanic")
     self.assertEqual(
         (self.movieBinaryRepository.getMovieWithId(1)).getDescription(),
         "description")
     self.assertEqual(
         (self.movieBinaryRepository.getMovieWithId(1)).getGenre(), "genre")
 def test_removeMovie(self):
     self.movieRepo.addMovie(MovieDAO("dani", "great", "nice"))
     self.movieRepo.addMovie(MovieDAO("titanic", "description", "genre"))
     self.movieRepo.removeMovieWithId(1)
     self.assertEqual(len(self.movieRepo.getList()), 1)
     testMovie = MovieDAO("dani", "great", "nice")
     testMovie.setMovieId(0)
     self.assertEqual(self.movieRepo.getList(), [testMovie])
     with self.assertRaises(ObjectNotInCollectionException):
         self.movieRepo.removeMovieWithId(5)
Esempio n. 10
0
 def addMovie(self, commandToRedo, movieController):
     movieController.addMovie(MovieDAO(commandToRedo[1], commandToRedo[2], commandToRedo[3]))
 def test_updateMovie(self):
     self.movieFileRepository.addMovie(MovieDAO("dani", "great", "nice"))
     self.movieFileRepository.addMovie(
         MovieDAO("titanic", "description", "genre"))
     self.movieFileRepository.updateMovieWithId(
         0, MovieDAO("ancu", "nice", "great"))
     testMovie1 = MovieDAO("ancu", "nice", "great")
     testMovie1.setMovieId(0)
     testMovie2 = MovieDAO("titanic", "description", "genre")
     testMovie2.setMovieId(1)
     self.assertEqual(self.movieFileRepository.getList(),
                      [testMovie1, testMovie2])
Esempio n. 12
0
 def populateWithMany(self):
     self.addMovie(MovieDAO("Titanic", "adventurous", "drama"))
     self.addMovie(MovieDAO("Avatar", "nice", "action"))
     self.addMovie(MovieDAO("Silence", "genial", "drama"))
     self.addMovie(MovieDAO("Mars", "vary romantic", "romance"))
     self.addMovie(MovieDAO("Narnia", "children stuff", "children"))
     self.addMovie(MovieDAO("Pluto", "war!", "children"))
     self.addMovie(MovieDAO("Conrad", "adventurous", "children"))
     self.addMovie(MovieDAO("Henry", "nice", "action"))
     self.addMovie(MovieDAO("Genie", "boring", "action"))
     self.addMovie(MovieDAO("China", "no comment", "romance"))
     self.addMovie(MovieDAO("Mainland", "silence", "romance"))
     self.addMovie(MovieDAO("crocodile", "out of ideas", "romance"))
     self.addMovie(MovieDAO("belly", "adventurous", "drama"))
     self.addMovie(MovieDAO("Allowable", "nice", "action"))
     self.addMovie(MovieDAO("Hobby", "genial", "drama"))
     self.addMovie(MovieDAO("Mary", "vary romantic", "romance"))
     self.addMovie(MovieDAO("Robot", "children stuff", "children"))
     self.addMovie(MovieDAO("Marsss", "war!", "children"))
     self.addMovie(MovieDAO("Glutton", "adventurous", "children"))
     self.addMovie(MovieDAO("Henry VIII", "nice", "action"))
     self.addMovie(MovieDAO("Genial", "boring", "action"))
     self.addMovie(MovieDAO("Appeell", "no comment", "romance"))
     self.addMovie(MovieDAO("Android", "silence", "romance"))
     self.addMovie(MovieDAO("A1", "out of ideas", "romance"))
     self.addMovie(MovieDAO("A2", "adventurous", "drama"))
     self.addMovie(MovieDAO("A3", "nice", "action"))
     self.addMovie(MovieDAO("A4", "genial", "drama"))
     self.addMovie(MovieDAO("A5", "vary romantic", "romance"))
     self.addMovie(MovieDAO("A6", "children stuff", "children"))
     self.addMovie(MovieDAO("A7", "war!", "children"))
     self.addMovie(MovieDAO("A8", "adventurous", "children"))
     self.addMovie(MovieDAO("A9", "nice", "action"))
     self.addMovie(MovieDAO("A21", "boring", "action"))
     self.addMovie(MovieDAO("A22", "no comment", "romance"))
     self.addMovie(MovieDAO("A23", "silence", "romance"))
     self.addMovie(MovieDAO("A24", "out of ideas", "romance"))
     self.addMovie(MovieDAO("A25", "adventurous", "drama"))
     self.addMovie(MovieDAO("A26", "nice", "action"))
     self.addMovie(MovieDAO("A27", "genial", "drama"))
     self.addMovie(MovieDAO("BY1", "vary romantic", "romance"))
     self.addMovie(MovieDAO("BY12", "children stuff", "children"))
     self.addMovie(MovieDAO("BY13", "war!", "children"))
     self.addMovie(MovieDAO("BY14", "adventurous", "children"))
     self.addMovie(MovieDAO("BY15", "nice", "action"))
     self.addMovie(MovieDAO("BY16", "boring", "action"))
     self.addMovie(MovieDAO("BY17", "no comment", "romance"))
     self.addMovie(MovieDAO("BY18", "silence", "romance"))
     self.addMovie(MovieDAO("BY9", "out of ideas", "romance"))
     self.addMovie(MovieDAO("BY122", "adventurous", "drama"))
     self.addMovie(MovieDAO("BY123", "nice", "action"))
     self.addMovie(MovieDAO("BY133", "genial", "drama"))
     self.addMovie(MovieDAO("BY144", "vary romantic", "romance"))
     self.addMovie(MovieDAO("BY155", "children stuff", "children"))
     self.addMovie(MovieDAO("BY166", "war!", "children"))
     self.addMovie(MovieDAO("BY177", "adventurous", "children"))
     self.addMovie(MovieDAO("BY188", "nice", "action"))
     self.addMovie(MovieDAO("BY199", "boring", "action"))
     self.addMovie(MovieDAO("BY1000", "no comment", "romance"))
     self.addMovie(MovieDAO("MaBY1inland", "silence", "romance"))
     self.addMovie(MovieDAO("BY~~1", "out of ideas", "romance"))
Esempio n. 13
0
 def updateMovie(self, commandToRedo, movieController):
     movieController.updateMovieWithId(int(commandToRedo[1]),
                                            MovieDAO(commandToRedo[2], commandToRedo[3],
                                                     commandToRedo[4]))
class TestMovie(TestCase):

    def setUp(self):
        self.movie = MovieDAO("Titanic", "lovely", "romance")

    def tearDown(self):
        self.movie = None

    def test_init(self):
        with self.assertRaises(ValueError):
            testMovie = MovieDAO(1, "dfa", "fasd")
        with self.assertRaises(ValueError):
            testMovie = MovieDAO("asd", [], "fasd")
        with self.assertRaises(ValueError):
            testMovie = MovieDAO("sdf", "fsda", 6.5)
        with self.assertRaises(ValueError):
            testMovie = MovieDAO(1, "dfa", [])
        with self.assertRaises(ValueError):
            testMovie = MovieDAO(1, [], {"6": 5})
        self.assertEqual(self.movie.getTitle(), "Titanic", 'movie title got wrong')
        self.assertEqual(self.movie.getDescription(), "lovely", 'movie description got wrong')
        self.assertEqual(self.movie.getGenre(), "romance", 'movie genre got wrong')
        self.assertRaises(TypeError, lambda: self.movie.getId(), 'default movie id not None')

    def test_setMovieId(self):
        self.movie.setMovieId(5)
        self.assertEqual(self.movie.getId(), 5, "movie id set wrong")

    def test_setWrongId(self):
        self.assertRaises(ValueError, lambda: self.movie.setMovieId(-3))
        self.assertRaises(ValueError, lambda: self.movie.setMovieId(5.5))
        self.assertRaises(ValueError, lambda: self.movie.setMovieId("dasas"))
        self.assertRaises(ValueError, lambda: self.movie.setMovieId([]))
        self.assertRaises(ValueError, lambda: self.movie.setMovieId({}))
        self.assertRaises(ValueError, lambda: self.movie.setMovieId((5, 3)))

    def test_setMovieIdSecondTime(self):
        self.movie.setMovieId(5)
        with self.assertRaises(AlreadySetException):
            self.movie.setMovieId(9)
 def setUp(self):
     self.movie = MovieDAO("Titanic", "lovely", "romance")
Esempio n. 16
0
 def populateWithFew(self):
     self.addMovie(MovieDAO("Titanic", "adventurous", "drama"))
     self.addMovie(MovieDAO("Avatar", "nice", "action"))
     self.addMovie(MovieDAO("Silence", "genial", "drama"))
     self.addMovie(MovieDAO("Mars", "vary romantic", "romance"))
     self.addMovie(MovieDAO("Narnia", "children stuff", "children"))
     self.addMovie(MovieDAO("Pluto", "war!", "children"))
     self.addMovie(MovieDAO("Conrad", "adventurous", "children"))
     self.addMovie(MovieDAO("Henry", "nice", "action"))
     self.addMovie(MovieDAO("Genie", "boring", "action"))
     self.addMovie(MovieDAO("China", "no comment", "romance"))
     self.addMovie(MovieDAO("Mainland", "silence", "romance"))
     self.addMovie(MovieDAO("Stars", "out of ideas", "romance"))
Esempio n. 17
0
 def __doAddMovie(self, optionInputWordList):
     self.movieController.addMovie(MovieDAO(optionInputWordList[1], optionInputWordList[2], optionInputWordList[3]))
Esempio n. 18
0
 def updateMovie(self, command, movieController):
     # return "movie" "update" "movie id" "old title" "old description" "old genre"
     updatedMovie = MovieDAO(command[3], command[4], command[5])
     updatedMovie.setMovieId(int(command[2]))
     movieController.updateMovieWithId(int(command[2]), updatedMovie)
 def test_getList(self):
     movie1 = MovieDAO("aaa", "aaa", "aaa")
     movie1.setMovieId(1)
     movie2 = MovieDAO("bb", "bb", "bb")
     movie2.setMovieId(2)
     movie3 = MovieDAO("958", "958", "958")
     movie3.setMovieId(4)
     self.movieFileRepository.addMovieWithId(movie1)
     self.movieFileRepository.addMovieWithId(movie2)
     self.movieFileRepository.addMovieWithId(movie3)
     self.assertEqual(self.movieFileRepository.getList(),
                      [movie1, movie2, movie3])
Esempio n. 20
0
 def __doUpdateMovie(self, optionInputWordList):
     self.movieController.updateMovieWithId(int(optionInputWordList[1]),
                                            MovieDAO(optionInputWordList[2], optionInputWordList[3],
                                                     optionInputWordList[4]))
 def test_hasClientWithId(self):
     movie1 = MovieDAO("aaa", "aaa", "aaa")
     movie1.setMovieId(1)
     movie2 = MovieDAO("bb", "bb", "bb")
     movie2.setMovieId(2)
     movie3 = MovieDAO("958", "958", "958")
     movie3.setMovieId(3)
     self.movieFileRepository.addMovieWithId(movie1)
     self.movieFileRepository.addMovieWithId(movie2)
     self.movieFileRepository.addMovieWithId(movie3)
     self.assertEqual(self.movieFileRepository.hasMovieWithId(1), True)
     self.assertEqual(self.movieFileRepository.hasMovieWithId(4), False)
Esempio n. 22
0
 def addMovie(self, command, movieController):
     # return "movie" "add" "movie id" "title" "description" "genre"
     movie = MovieDAO(command[3], command[4], command[5])
     movie.setMovieId(int(command[2]))
     movieController.addMovieWithId(movie)