elemes/services/tests
a2nr 1f4217be76 fix(quiz): enforce 75% passing threshold, sync server progress, and persist attempt review
- Only show celebration overlay and top bar completed checkmark if quiz score meets 75% threshold (>= 0.75) and exercises are done
- Return is_done, state, and composite_percent in POST /lesson-progress for exercise and quiz submissions
- Synchronize frontend LessonManager state with authoritative server is_done response
- Add has_quiz_attempt check in routes/lessons.py and token_service to recognize existing attempts even when composite state is in_progress
- Update QuizTab to display persistent attempt review, score status, and explanation instead of retake prompt on page load/refresh
- Make QuizQuestionView finish handler async, await finishQuiz(), and disable submission buttons to prevent navigation race conditions
- Update local ordered_lessons completion state dynamically upon passing
- Add unit and integration tests covering response payload attributes and has_quiz_attempt API field
- Bump APP_VERSION to 30
2026-09-09 07:33:52 +07:00
..
fixtures
…
__init__.py
…
conftest.py feat(content-editor): konfirmasi ganda file navigasi kritis & hapus narrow sidebar 2026-08-23 08:18:02 +07:00
test_auth_routes.py refactor(test): unified test runner, markers, elemes.sh cleanup 2026-08-17 11:29:29 +07:00
test_compile_sessions.py refactor(test): unified test runner, markers, elemes.sh cleanup 2026-08-17 11:29:29 +07:00
test_composite_flow.py refactor(routes): remove /api/lesson-progress aliases and standardize tests to /lesson-progress 2026-08-30 04:45:37 +07:00
test_composite_score.py feat: unified lesson progress — composite score & /api/lesson-progress 2026-08-29 00:22:10 +07:00
test_content_editor_routes.py feat(test): add velxio-test command to elemes.sh and Arduino content editor integration tests 2026-09-05 20:44:58 +07:00
test_lesson_progress_routes.py fix(quiz): enforce 75% passing threshold, sync server progress, and persist attempt review 2026-09-09 07:33:52 +07:00
test_lesson_registry.py fix(review): address code review findings for dev to master merge 2026-09-06 18:08:58 +07:00
test_lesson_service_embed.py refactor(test): unified test runner, markers, elemes.sh cleanup 2026-08-17 11:29:29 +07:00
test_lesson_service_quiz.py refactor(test): unified test runner, markers, elemes.sh cleanup 2026-08-17 11:29:29 +07:00
test_lesson_service_velxio.py test(velxio): add comprehensive unit test suites for velxio-manager, hooks redirect, and backend markdown parsing 2026-09-05 18:06:19 +07:00
test_models.py refactor(test): unified test runner, markers, elemes.sh cleanup 2026-08-17 11:29:29 +07:00
test_prerequisite_logic.py feat: unified lesson progress — composite score & /api/lesson-progress 2026-08-29 00:22:10 +07:00
test_progress_routes.py refactor(routes): remove /api/lesson-progress aliases and standardize tests to /lesson-progress 2026-08-30 04:45:37 +07:00
test_quiz_hash_in_code_fence.py fix(quiz): jangan belah soal saat '#' muncul di dalam code fence 2026-08-30 10:55:06 +07:00
test_repositories.py feat(student-management): sync imported progress with composite model and add inline expected format to CSV headers 2026-09-08 19:01:33 +07:00
test_student_management_routes.py feat(student-management): sync imported progress with composite model and add inline expected format to CSV headers 2026-09-08 19:01:33 +07:00
test_student_roundtrip.py feat(student-management): sync imported progress with composite model and add inline expected format to CSV headers 2026-09-08 19:01:33 +07:00
test_sub_home.py refactor(test): unified test runner, markers, elemes.sh cleanup 2026-08-17 11:29:29 +07:00
test_sub_home_api.py fix(quiz): enforce 75% passing threshold, sync server progress, and persist attempt review 2026-09-09 07:33:52 +07:00
test_teacher_bootstrap.py fix(docs/api): hilangkan sync berulang di api_reference + UI API Reference di /docs 2026-08-17 16:37:30 +07:00
test_token_hashing.py refactor(test): unified test runner, markers, elemes.sh cleanup 2026-08-17 11:29:29 +07:00
test_token_service_contract.py feat: unified lesson progress — composite score & /api/lesson-progress 2026-08-29 00:22:10 +07:00