Skip to content

[MBL-19717][Student] Add offline dashboard support for courses widget#3525

Open
hermannakos wants to merge 2 commits intomasterfrom
MBL-19717-offline-dashboard-support
Open

[MBL-19717][Student] Add offline dashboard support for courses widget#3525
hermannakos wants to merge 2 commits intomasterfrom
MBL-19717-offline-dashboard-support

Conversation

@hermannakos
Copy link
Collaborator

Test plan

  1. Enable offline mode for a course in Settings > Offline Content
  2. Sync the course data
  3. Turn on airplane mode
  4. Open the Student app and navigate to the Dashboard
  5. Verify all courses display — synced courses are fully interactive, unsynced courses appear in an inactive state
  6. Verify groups section is hidden when offline
  7. Verify announcement badges display for synced courses
  8. Turn off airplane mode and verify the dashboard loads normally from the network

refs: MBL-19717
affects: Student
release note: Dashboard courses widget now supports offline mode, displaying synced courses when there is no network connection.

  • Follow-up e2e test ticket created or not needed
  • Tested in dark mode
  • Tested in light mode
  • Test in landscape mode and/or tablet
  • A11y checked
  • Approve from product

hermannakos and others added 2 commits February 13, 2026 14:45
…get repositories

Add DataSource pattern to Course, Group, and Announcement repositories in pandautils
for offline dashboard support. Local datasources use CourseFacade, DashboardCardDao,
and DiscussionTopicHeaderFacade. Non-synced courses are constructed from dashboard cards
so all courses display in inactive state when offline.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add comprehensive tests for the new DataSource pattern and replace
obsolete repository tests that used old constructor signatures.
Also fix SpeedGraderContentViewModelTest date formatting for JDK 21
compatibility.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions
Copy link

📊 Code Coverage Report

✅ Student

  • PR Coverage: 43.11%
  • Master Coverage: 43.11%
  • Delta: +0.00%

✅ Teacher

  • PR Coverage: 25.39%
  • Master Coverage: 25.39%
  • Delta: +0.00%

✅ Pandautils

  • PR Coverage: 23.28%
  • Master Coverage: 23.19%
  • Delta: +0.08%

📈 Overall Average

  • PR Coverage: 30.59%
  • Master Coverage: 30.57%
  • Delta: +0.03%

@github-actions
Copy link

🧪 Unit Test Results

✅ 📱 Student App

  • Tests: 1240 total, 0 failed, 0 skipped
  • Duration: 0.000s
  • Success Rate: 100%

✅ 🌅 Horizon

  • Tests: 623 total, 0 failed, 0 skipped
  • Duration: 33.382s
  • Success Rate: 100%

❌ 📦 Submodules

  • Tests: 3039 total, 1 failed, 0 skipped
  • Duration: 51.440s
  • Success Rate: 100%
❌ Failed Tests (1)
  • com.instructure.pandautils.features.offline.offlinecontent.OfflineContentRepositoryTest.Returns courses only with active enrollment and valid term

📊 Summary

  • Total Tests: 4902
  • Failed: 1
  • Skipped: 0
  • Status: ❌ 1 test(s) failed

Last updated: Fri, 13 Feb 2026 15:37:01 GMT

@github-actions
Copy link

Student Install Page

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant