-
This is similar to a Shell Project that has the following features
-
Create a new object (ex: a new User or a new Place)
-
Retrieve an object from a file, a database etc…
-
Do operations on objects (count, compute stats, etc…)
-
Update attributes of an object
-
Destroy an object
Your shell should work like this in interactive mode:
$ ./console.py (hbnb) help
EOF help quit
(hbnb) (hbnb) (hbnb) quit $ But also in non-interactive mode: (like the Shell project in C)
$ echo "help" | ./console.py (hbnb)
EOF help quit (hbnb) $ $ cat test_help help $ $ cat test_help | ./console.py (hbnb)
EOF help quit (hbnb) $
- All tests should also pass in non-interactive mode: $ echo "python3 -m unittest discover tests" | bash