Disco DeDisco
306b4c8e5e
new template _partials for apps.dashboard, incl. _form.html & _scripts.html; respective form, table & content code offloaded from base.html, home.html & list.html; functional_tests.test_my_list TODO resumed (only FT not currently passing, but this is as expected)
2026-02-08 21:43:58 -05:00
Disco DeDisco
8190317c21
nginx compatibility added to serve static files on server; whitenoise installed to catch static file serving in local docker container, also added to core.settings middleware; console logs & print statements removed from dashboard.js & functional_tests.container_commands; ansible playbook and nginx config file support nginx w.in deployment workflow
2026-02-08 17:55:09 -05:00
Disco DeDisco
07a76cb32d
added new template apps/dashboard/my_lists.html; all FTs passing green locally, tho half og .test_my_lists TODO'd out; test_login uses mock-patch architecture to avoid Mailgun and DigitalOcean magic login link testing restraints
2026-02-07 22:47:04 -05:00
Disco DeDisco
0c413a9cc2
pre–db-reset commit; attempting to update User model w. uuid pk enumeration
2026-02-07 20:15:27 -05:00
Disco DeDisco
58b526f434
add_list_item() helper added to functional_tests.base; further propagated into .test_layout_and_styling, .test_list_item_validation, .test_my_lists & .test_simple_list_creation; all FTs passing locally (tho js-dependent FT still require nginx to serve scripts properly in docker or on server)
2026-02-07 19:44:47 -05:00
Disco DeDisco
10ba5b84e4
after many diversions and forlorn pivot from copilot to claude, new infra/ structure contains group_vars and ansible vaults; requests added to dev and prod dependencies; apps.lyric.views and core
...
.settings both abandon django's send_mail(); instead incorporate requests to target Mailgun's HTTP API (DigitalOcean's SMTP blocker thwarted previous magic login link email attempts, but this issue has been resol
ved with this commit)
2026-02-07 18:58:17 -05:00
Disco DeDisco
449b40e12e
new functional_tests.container_commands file discerns local from server containers; .base calls now calls reset_database() therefrom; .test_my_lists also discerns test server location for different session keys; functional_tests restored as app in core.settings
2026-02-03 22:14:55 -05:00
Disco DeDisco
55bb589f61
added functional_tests to installed apps in core.settings (but only when debug is true); created management dir to contain new django cmds & listed in .dockerignore; created management.create_session cmd; recreated container.db.sqlite3; tweaked test_server setup in functional_tests.base; added test_server failsafe to magic link login testing in .test_login
2026-02-03 14:54:37 -05:00
Disco DeDisco
3fdd07e003
wrapped most helper functions in functional_tests.base in the new @wait decorator, including wait_for() itself; all UTs & FTs passing
2026-02-01 20:38:26 -05:00
Disco DeDisco
2db1c0e3fc
temp. favicon 204 silencer added to core.urls; functional_tests.test_my_lists now tests authenticity of login compared to queried list
2026-02-01 20:18:42 -05:00
Disco DeDisco
cf33f0ccd4
created new FT file at functional_tests.test_my_lists, where the first test model focuses on the integrity of cookie sessions; much of FT login/logout logic offloaded to helper functions in .base;logout django templating added to base.html
2026-02-01 20:06:01 -05:00
Disco DeDisco
36f4182a4f
core/base.html & settings.py updated for email-based login & logout
2026-02-01 16:19:07 -05:00
Disco DeDisco
d236ab9d69
apps.lyric.views updated with simpler FBV & test functionality for user login & authentication (some mocking employed); FT in test_simple_list_creation updated for new base.html content from several commits previous, now only FT not passing (to be expected) is under test_login
2026-01-31 15:16:34 -05:00
Disco DeDisco
9c102ac0f5
updated apps.lyric.views for simpler login authentication and error messaging; .tests.test_views have new test method to assert either authentication condition has properly occurred
2026-01-30 21:51:06 -05:00
Disco DeDisco
ae63861adb
migrations run for lyric models; authentication & views & their tests now account more fully for uuid over email as pk
2026-01-30 21:33:30 -05:00
Disco DeDisco
f002cc5c84
auth backend defined in core.settings
2026-01-30 19:35:45 -05:00
Disco DeDisco
b12f56c7ca
functional auth backend; new get_user() method in authentication model & new accompanying test methods
2026-01-30 19:26:02 -05:00
Disco DeDisco
41f4ff1725
new apps.lyric.authenticate model PasswordlessAuthenticationBackend and authenticate() function help determine Token authenticity, login to existing accounts, or create new ones; associated .tests.test_authentication class asserts this functionality; apps.lyric.models & .tests.models now handles token uid instead of id, completing the transition away from email-as-pk
2026-01-30 19:10:17 -05:00
Disco DeDisco
2d61506a6d
apps.lyric.views now generates a token associated w. the user-entered email & includes a link w. the token to login to the testserver; .tests.test_views asserts the association and the inclusion
2026-01-30 17:52:44 -05:00
Disco DeDisco
bab0b045b0
new apps.lyric.views login FBV; new login path in .urls; new UT in .tests.test_views to assert the FBV's redirect to '/'
2026-01-30 17:36:48 -05:00
Disco DeDisco
93eb497dec
mocking added thruout apps.lyric.tests.test_views, where UTs mock message sending; status message loop added to base.html below navbar; hardcoded assert and model/view values aligned across lyric app, UTs & FTs
2026-01-30 17:23:07 -05:00
Disco DeDisco
4b1906b1ee
new apps.lyric.urls, .tests.test_views files to test & execute mock email sending; apps.lyric.models, .tests.test_models now test & execute unique token autogen to integrate w. magic link login using only email; core.settings updated w. new urlpatterns to accommodate
2026-01-30 16:21:32 -05:00
Disco DeDisco
d724e03c3c
custom user model that maintains id as pk
2026-01-30 15:04:47 -05:00
Disco DeDisco
a734901b80
started lyric app (in earnest this time); added bootstrap-classed navbar w. login form to base.html; tweaked apps.dashboard.tests.test_views to accomodate multiple forms on same page
2026-01-29 15:21:54 -05:00
Disco DeDisco
3ebf4db974
removed spiked lyric app; pursuring spiked code via TDD, starting w. functional_tests.test_login
2026-01-29 14:28:19 -05:00
Disco DeDisco
adf0ca3d25
js complete to hide error msg on changed user input
2026-01-27 17:18:59 -05:00
Disco DeDisco
e699c18321
applied initalize() to templates/core/base.html for DRYer script tags
2026-01-27 17:05:47 -05:00
Disco DeDisco
6546bbba84
refactored for DRY handling of inputSelector (#id_text) & errorSelector (.invalid-feedback)
2026-01-27 16:56:05 -05:00
Disco DeDisco
7f2267f5e3
initialize() restored to a const (was a function)
2026-01-27 16:39:48 -05:00
Disco DeDisco
93aa3534e5
initialize() functionality restored to dashboard.js, after a missing id-selector was found missing
2026-01-27 16:38:47 -05:00
Disco DeDisco
6178dccd3f
bypassed app-specific script initialize() function to include directly in spec; Jasmine tests now also passing
2026-01-27 14:29:48 -05:00
Disco DeDisco
fc05281351
restored templates/apps/dashboard/ & its contents; inadvertently deleted in previous update; all UTs & FTs once again passing
2026-01-27 13:48:59 -05:00
Disco DeDisco
d8da9051ff
defined static structure as src/apps/dashboard/static/apps/scripts/dashboard.js for Jasmine testing purposes; efforts to get past textInput=null have thus far been frustrated
2026-01-25 22:40:57 -05:00
Disco DeDisco
eb237f95ec
new FT method & error element helper in functional_tests.test_list_item_validation; not yet passing, awaiting JS implementation
2026-01-24 14:23:43 -05:00
Disco DeDisco
373b20d516
missed a crucial line in an apps.dashboard.tests.test_forms test method to ensure the form is_valid(); has now been rectified so that all UTs & FTs pass
2026-01-24 13:44:38 -05:00
Disco DeDisco
6627042b7a
removed reliance on built-in django ModelForms from templates/core/base.html, apps.dashboard.forms, .tests.test_forms & .test_views
2026-01-24 13:36:31 -05:00
Disco DeDisco
0afc5ee8d7
defined Meta ordering of the Item() model in apps.dashboard.models; Item() also now returns a __str__ result; in .forms, defined a specific use-case of is_valid() method; a pair of new UTs in .tests.test_models help confirm str representation and list order of items; .test_forms now ensures the .is-invalid bootstrap class is tested as a css class attr; migrations run; full UT & FT suite back to passing state (tho a refactor of flimsy form customizations is desperately needed)
2026-01-24 13:00:12 -05:00
Disco DeDisco
49491e2497
new save FBVs, methods & test methods
2026-01-23 22:39:12 -05:00
Disco DeDisco
f27b9ffb52
apps.dashboard.views & .tests.test_views now take advantage of DUPLICATE_ITEM_ERROR & ExistingListItemForm() from .forms
2026-01-23 22:30:42 -05:00
Disco DeDisco
004241d52d
new form model in apps.dashboard.forms to handle existing item-lists; new test model in .tests.test_forms to accommodate; also new method in .test_views, but skipped for now
2026-01-23 22:23:40 -05:00
Disco DeDisco
6804d3aaae
actually committed previously enumerated changes; the previous commit actually contained only the migrations reflecting these changes
2026-01-23 21:51:56 -05:00
Disco DeDisco
8a9f7c8af8
changed #id-list-table everywhere to #id_list_table; duplicate item validation in apps.dashboard.tests.test_models, where ListAndItemModelsTest has been broken out into two different test models
2026-01-23 21:50:49 -05:00
Disco DeDisco
fa5700d9e8
added Meta class to Item() model to test for duplicate item/list entries
2026-01-21 15:29:47 -05:00
Disco DeDisco
e01391446e
new test method in ItemValidationTest(); does not currently pass
2026-01-21 15:12:13 -05:00
Disco DeDisco
f841408488
custom save method implemented in ItemForm(); views & tests updated accordingly (all UTs & FTs passing)
2026-01-21 15:02:26 -05:00
Disco DeDisco
071a3d2532
apps.dashboard.forms now employed in all views; FT helpers in base.py updated to look for Django's default #id_text (instead of #id-text)
2026-01-21 14:41:25 -05:00
Disco DeDisco
1d96871d7b
emancipated hardcoded form views & html from base.html, apps.dashboard.views, apps.dashboard.tests.test_views; added get_item_input_box() helper method to functional_tests.base & retrofitted the other FTs to utilize it
2026-01-20 15:14:05 -05:00
Disco DeDisco
93cc6632c4
found-n-replaced all instances of name='item_text' w. ='text'
2026-01-19 22:33:21 -05:00
Disco DeDisco
5b1f28db4b
form code placeholders left commented-out in apps.dashboard.views; base.html somewhat retrofitted w. dynamic form views
2026-01-19 22:19:33 -05:00
Disco DeDisco
0014d9124a
created apps.dashboard.forms & commensurate apps.dashboard.tests.test_forms; new ItemForm() ModelForm & EMPTY_ITEM_ERROR constant
2026-01-19 22:01:33 -05:00