Commit b7ec4d3
committed
Add CSV import features, test suite improvements, and documentation
Features:
- Categories CSV import (API + frontend with drag & drop)
- Transactions CSV import with custom format (API + frontend)
- Smart account/institution creation during transaction import
- Auto-creation of category types and groups during category import
- Duplicate detection for both imports
- Rich description building from multiple CSV fields
Test Improvements:
- Created comprehensive test suite (142 tests total)
- 121/142 tests passing (85% pass rate, up from 62%)
- 100% of model tests passing (63/63)
- 96% of API tests passing (54/56)
- Added input validation to 5 API controllers
Documentation:
- Organized all documentation into /docs directory
- Created comprehensive INDEX.md for navigation
- New root README.md with project overview
- CATEGORIES_IMPORT_FEATURE.md - Complete feature documentation
- TRANSACTIONS_IMPORT_FEATURE.md - Complete feature documentation
- DOCUMENTATION_ORGANIZATION.md - Documentation structure guide
Bug Fixes:
- Fixed account creation 400 error on frontend
- Fixed validation to allow optional fields (None values)
- Added missing default fields to account creation form
Files Modified:
- api/account/controllers.py - Added validation
- api/categories/controllers.py - Added CSV import endpoint and validation
- api/institution/controllers.py - Added validation
- api/institution_account/controllers.py - Fixed validation logic
- api/transaction/controllers.py - Rewrote CSV import with new format
- app/categories/controllers.py - Added import route
- app/static/js/institution_account/institution_account.js - Added default fields
- app/templates/categories/index.html - Added import button
- app/templates/transactions/import.html - New drag & drop interface
- app/templates/transactions/index.html - Updated import button
Files Created:
- app/static/js/categories/import.js - Categories upload handler
- app/static/js/transactions/import.js - Transactions upload handler
- app/templates/categories/import.html - Categories import UI
- tests/ - Complete test suite (142 tests)
- docs/ - All documentation moved here
- .coveragerc - Coverage configuration
- pytest.ini - Pytest configuration1 parent 43b528c commit b7ec4d3
File tree
41 files changed
+7772
-179
lines changed- api
- account
- categories
- institution_account
- institution
- transaction
- app
- categories
- static/js
- categories
- institution_account
- transactions
- templates
- categories
- transactions
- docs
- tests
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
41 files changed
+7772
-179
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
21 | 25 | | |
22 | 26 | | |
23 | 27 | | |
0 commit comments