- Python 3.x ( Tested on 3.11.2 and 3.11.5 )
- Pipenv (optional but recommended for managing dependencies)
-
Clone the repository:
$ git clone https://github.com/haikentcode/purchase-order.git $ cd purchase-order -
Create a virtual environment to install dependencies in and activate it:
#using venv ( Note: python --> python3 ) $ python -m venv sumtracker $ source sumtracker/bin/activate
#using pyenv( creating env with python version 3.11.5) $ pyenv virtualenv 3.11.5 sumtracker $ pyenv activate sumtracker -
Install dependencies:
(sumtracker)../purchase-order $ pip install -r requirements.txt
-
Apply migrations:
(sumtracker)../purchase-order $ cd eshop (sumtracker)../purchase-order/eshop $ python manage.py migrate -
Run the development server:
(sumtracker)../purchase-order/eshop $ python manage.py runserver
-
Creating a Superuser
(sumtracker)../purchase-order/eshop $ python manage.py createsuperuser
(sumtracker)../purchase-order $ python manage.py test
Found 18 test(s).
Creating test database for alias 'default'...
System check identified no issues (0 silenced).
..................
----------------------------------------------------------------------
Ran 18 tests in 21.744s
OK
Destroying test database for alias 'default'...
(sumtracker)../purchase-order $ python manage.py test --verbosity 1 --force-color
....
test_create_line_item (purchase.test.LineItemViewSetTestCase.test_create_line_item) ... ok
test_delete_line_item (purchase.test.LineItemViewSetTestCase.test_delete_line_item) ... ok
test_get_line_item (purchase.test.LineItemViewSetTestCase.test_get_line_item) ... ok
test_update_line_item (purchase.test.LineItemViewSetTestCase.test_update_line_item) ... ok
test_create_order (purchase.test.OrderAPITestCase.test_create_order) ... ok
test_create_order_with_pre_exist_supplier (purchase.test.OrderAPITestCase.test_create_order_with_pre_exist_supplier) ... ok
test_create_order_without_line_items (purchase.test.OrderAPITestCase.test_create_order_without_line_items) ... ok
test_create_order_without_supplier (purchase.test.OrderAPITestCase.test_create_order_without_supplier) ... ok
test_delete_order_by_id (purchase.test.OrderAPITestCase.test_delete_order_by_id) ... ok
test_filter_orders_by_item_name (purchase.test.OrderAPITestCase.test_filter_orders_by_item_name) ... ok
test_filter_orders_by_supplier_and_item_name (purchase.test.OrderAPITestCase.test_filter_orders_by_supplier_and_item_name) ... ok
test_filter_orders_by_supplier_name (purchase.test.OrderAPITestCase.test_filter_orders_by_supplier_name) ... ok
test_update_order (purchase.test.OrderAPITestCase.test_update_order) ... ok
test_update_order_number (purchase.test.OrderAPITestCase.test_update_order_number) ... ok
test_update_order_pre_exist_line_item_update (purchase.test.OrderAPITestCase.test_update_order_pre_exist_line_item_update) ... ok
test_create_supplier (purchase.test.SupplierAPITestCase.test_create_supplier) ... ok
test_delete_supplier (purchase.test.SupplierAPITestCase.test_delete_supplier) ... ok
test_update_supplier (purchase.test.SupplierAPITestCase.test_update_supplier) ... ok
....
── LICENSE
├── README.md
├── eshop
│ ├── eshop
│ │ ├── __init__.py
│ │ ├── asgi.py
│ │ ├── settings.py
│ │ ├── urls.py
│ │ └── wsgi.py
│ ├── manage.py
│ └── purchase
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── filters.py
│ ├── management
│ │ └── commands
│ │ └── populate_data.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ ├── models.py
│ ├── serializers.py
│ ├── test.py
│ ├── urls.py
│ └── views.py
└── requirements.txt
Suppliers: /purchase/suppliers/ -
Orders: /purchase/orders/ -
Line Items: /purchase/line_items/ -
Swagger UI: To view the API documentation using Swagger UI,
navigate to http://127.0.0.1:8000/api/swagger-ui/ in your web browser.
ReDoc: For a more interactive documentation experience,
you can visit http://127.0.0.1:8000/docs/.