Go to file
Colin Goutte 641ded12ad Add tooling and doc for our first usecase 2023-08-25 11:11:29 +02:00
docs Fix generating documentation 2023-08-23 17:32:09 +02:00
.gitignore Add doc on functional testing tools 2023-08-25 10:36:37 +02:00
Makefile Dev server automaticaly restarts and functional tests are green 2023-08-25 10:34:43 +02:00
MakefileVenv Add readme 2023-08-23 17:06:10 +02:00
Pipfile Dev server automaticaly restarts and functional tests are green 2023-08-25 10:34:43 +02:00
README.rst Add tooling and doc for our first usecase 2023-08-25 11:11:29 +02:00
dev.py Dev server automaticaly restarts and functional tests are green 2023-08-25 10:34:43 +02:00
functionnal_test.py Refactor: only one instantiation of webdriver 2023-08-25 10:50:37 +02:00
gitaliases.gitconfig Add tooling and doc for our first usecase 2023-08-25 11:11:29 +02:00
movie_service.py simple create and update implementation 2023-08-23 15:04:33 +02:00
requirements.txt Implement venv requirement 2023-08-23 16:10:04 +02:00
requirements_dev.txt Implement venv requirement 2023-08-23 16:10:04 +02:00
test_guidelines.py Add test for readme file 2023-08-23 16:24:29 +02:00
test_overview.py Prepare testing for overview section 2023-08-23 15:13:58 +02:00

README.rst

###################################
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



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>