Skip to content

tamcl/aire-logic-python-dev-interview-test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aire Logic's python dev interview test

Your goal is to implement a simple bug tracker. The features we would like, in no particular order:

  • It should be possible to view the list of open bugs, including their titles
  • It should be possible to view the detail of individual bugs, including the title the full description, and when it was opened
  • It should be possible to create bugs
  • It should be possible to close bugs
  • It should be possible to assign bugs to people
  • It should be possible to add people to the system
  • It should be possible to change people's names
  • The web application should look nice
  • The web application should expose some sort of API
  • The data should be stored in some sort of database

There are 6 key areas that the dev marking your test will look at, they are:

  • Documentation
  • Setup
  • Functionality
  • Usability
  • Project Structure
  • Testing

This code runs in Python 3.9

pip install -r requirements.txt

Activate api (everything in the code is hardcoded for http://0.0.0.0:80/) (it is located in src.api.api)

uvicorn src.api.api:app --host 0.0.0.0 --port 80

After starting the server for the api

Please use http://0.0.0.0:80/docs to access the swagger doc

Run unit test (!!everytime it runs, it will reset the database!!)

python test.py

Please refer to example directory to use command lines, there's a postman collection as a reference.

future work: The testing is not the best, but tests all the functionality of all API end points, status code is not exactly the correct one but it is using try catch to protect the api to execute in the correct behaviour.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages