Skip to content

Merge release parent#3627

Merged
tamaskozmer merged 7 commits intomasterfrom
merge-release-parent
Apr 7, 2026
Merged

Merge release parent#3627
tamaskozmer merged 7 commits intomasterfrom
merge-release-parent

Conversation

@tamaskozmer
Copy link
Copy Markdown
Contributor

No description provided.

tamaskozmer and others added 7 commits March 23, 2026 15:15
refs: MBL-19863
affects: Student, Teacher, Parent
release note: -

(cherry picked from commit fae7557)
* Fix New Login UI changes in E2E tests.

refs: MBL-19864
affects: Student, Teacher, Parent
release note: -

* Fix LoginSignInPage UI element selectors + Stub a test (needs further investigation).

* Add util function for react input notifying.

* Stabilize Login tests by waiting for email and password field to be displayed before making interaction with them.

* Stub Student DashboardE2ETest

(cherry picked from commit 92883f8)
Removed @singleton annotation because it caused issues

(cherry picked from commit b777ed4)
# Conflicts:
#	apps/parent/src/androidTest/java/com/instructure/parentapp/ui/e2e/compose/LoginE2ETest.kt
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 7, 2026

🧪 Unit Test Results


📊 Summary

  • Total Tests: 0
  • Failed: 0
  • Skipped: 0
  • Status: ⚠️ No test results found

Last updated: Tue, 07 Apr 2026 08:55:03 GMT

Copy link
Copy Markdown

@claude claude Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Summary

This PR adds support for downloading Canvas file URLs (on canvas-user-content.com) that are intercepted in shouldInterceptRequest, and wires up the MediaDownloadCallback in SimpleWebViewFragment for the Parent app. The approach is consistent with the existing Studio and caption-file download patterns in CanvasWebView. Version bump from 4.10.14.11.0 looks correct.

Issues Found

  • Incorrect filename extraction — downloaded files will always be named "file" (CanvasWebView.kt line 444): parseFileNameFromContentDisposition(url, url) passes the raw URL as the content-disposition value. The function only extracts a name when "filename=" is present in the content argument; since a Canvas download URL contains no such string, every download resolves to the default "file" with no extension and no uniqueness hash. See inline comment for a suggested fix.

  • /download substring is slightly too broad in isCanvasFileDownload (CanvasWebView.kt line 1062): url.contains("/download") matches paths like /bulk-download or /download-center. Changing to url.contains("/download?") tightens the check to the actual query-string boundary. See inline comment.

Observations (no action required)

  • Making isStudioDownload and isInternalFileDownloadLink private is a correct cleanup — both are internal implementation details, and all call sites are within the enclosing class.
  • The fall-through to super.shouldInterceptRequest after the new isCanvasFileDownload block (rather than returning WebResourceResponse(null, null, null)) matches the existing Studio download pattern and its associated comment about empty responses breaking the displayed page.
  • No unit tests are added for isCanvasFileDownload, but this is consistent with how isStudioDownload and isInternalFileDownloadLink are currently handled in the codebase.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 7, 2026

📊 Code Coverage Report

✅ Student

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

✅ Teacher

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

✅ Pandautils

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

📈 Overall Average

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

@tamaskozmer tamaskozmer merged commit 70510ee into master Apr 7, 2026
30 checks passed
@tamaskozmer tamaskozmer deleted the merge-release-parent branch April 7, 2026 09:12
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.

3 participants