###################################
Documentation the movie API project
###################################
********
Context
********
We want to code a sample api to so show workskills
========
Stack
========
# Fraweworks
I choose to use `FastAPI <https://fastapi.tiangolo.com/>`
Environement / Install
----------------------
We assume make is installed
if pipenv is installed:
.. code-block:: shell
make clean install run_dev
if pipenv is *not* installed
.. code-block:: shell
make -f MakefileVenv clean install run_dev
I suggest you have pipenv installed, this projet is writtent under python 3.12 and may work on other versiona
We have a requirement of being virtualenv compatible while i will working with Pipenv.
Testing
-------
Unitest should run flawlessly using make test, however functionnal testing may require some extra work.
Functional testing requires *geckodriver* and *selenium* which is a driver to programatically control firefox (so one ca reproduce user behavior)
.. code-block:: shell
#debian
sudo apt-get install firefox-geckodriver
# arch
sudo pacman -S geckodriver
Database
--------
For now we only use sqlite
One may use `make db_clean` and `make db_fill` to feed database.
For debugging purposes `watch make db_reset` and `make watch_db` might be helpful in aside terminals.
Toolings
--------
Few useful git aliases may be found in `gitalias.gitconfig` to use them add the include directive to your .git/config file
.. code-block::
[include]
path = ../gitaliases.gitconfig
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
<snip>