Commit Graph

121 Commits

Author SHA1 Message Date
Disco DeDisco
d1c715ab0c .woodpecker.yaml FT step now covers collectstatic
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-11 13:26:55 -05:00
Disco DeDisco
0222aa9ea2 .woodpecker.yaml pipeline updated with first-push FT testing
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-11 12:54:49 -05:00
Disco DeDisco
5ff0e4ec10 commented out second step of .woodpecker.yaml to confirm working test pipeline
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-10 22:44:10 -05:00
Disco DeDisco
b94f1f48aa Dockerfile.ci & debug-ci now build working container for CI test image 2026-02-10 22:42:45 -05:00
Disco DeDisco
9fa428c63a added cssselect to requirements.txt to accompany lxml library from previous commit
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-10 21:45:49 -05:00
Disco DeDisco
5a633dccee apps.lyric.views and .tests.test_views updated for better Mailgun API post mocking; UTs passing locally
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
2026-02-10 21:42:15 -05:00
Disco DeDisco
fec1cfcb30 Gitea repo init; Woodpecker pipeline init; much CI/CD structure outlined in ./infra, incl. docker-compose.yaml, cicd-playbook.yaml, new cicd vault, & config files for gitea, woodpecker & ansible
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
2026-02-10 21:16:00 -05:00
Disco DeDisco
4e1feddb45 new name @property in List model, replete w. proper testing in tests.test_models 2026-02-08 22:50:03 -05:00
Disco DeDisco
94a161fe09 List objects now container owner values, saved upon creation, linked to user fk; apps.dashboard.views updated accordingly; 36 UTs passing (2 new) 2026-02-08 22:33:15 -05:00
Disco DeDisco
6c0e9bb6ec new_list() FBV tries to assign List owner, but List() model has no such attr 2026-02-08 22:23:43 -05:00
Disco DeDisco
c176fe6cb3 new UT ensures correct list ownership from apps.dashboard.views 2026-02-08 22:18:41 -05:00
Disco DeDisco
fad8657c97 placeholder view & code for my_lists.html implemented 2026-02-08 21:52:04 -05:00
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
512e5e6cd9 prod commit with small staticfile handling changes to container.db.sqlite3, the Dockerfile & requirements.dev.txt 2026-01-27 23:32:16 -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