Skip to content

Conversation

@kdeakinstructure
Copy link
Contributor

Implement E2E test for Draft assignment feature.
Add some page object methods.
Add ComposeCustomActions util file.
Add rceditor dependency to espresso gradle.
Move TextSubmissionUploadPage from classic to compose pages.

refs: MBL-17659
affects: Student
release note: -

  • Run E2E test suite

Add some page object methods.
Add ComposeCustomActions util file.
Add rceditor dependency to espresso gradle.
Move TextSubmissionUploadPage from classic to compose pages.

refs: MBL-17659
affects: Student
release note: -
…ignment

# Conflicts:
#	apps/student/src/androidTest/java/com/instructure/student/ui/utils/StudentComposeTest.kt
#	apps/student/src/androidTest/java/com/instructure/student/ui/utils/StudentTest.kt
Copy link

@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 migrates the TextSubmissionUploadPage from classic views to Compose and adds a new E2E test for draft assignment functionality. The changes look solid overall with good test coverage for the draft submission workflow.

Issues Found

  • Missing copyright header in TextSubmissionUploadPage.kt - Should include Apache License 2.0 header
  • Missing newlines at EOF in TextSubmissionUploadPage.kt and CustomActions.kt
  • Test naming inconsistency - test1DraftAssignmentE2E should be testDraftAssignmentE2E

Positive Aspects

Good test coverage - The new test1DraftAssignmentE2E test comprehensively covers the draft submission workflow including save/don't save scenarios
Clean migration - The refactor from classic to Compose is well-structured and maintains the same functionality
Helpful utilities - New TypeInRCETextEditor action and RCE assertions (RCETextEditorContentAssertion, RCETextEditorHtmlAssertion) will be useful for other tests
Consistent patterns - The Compose page object follows established patterns in the codebase
Proper dependency management - Added rceditor dependency to espresso module appropriately

Test Quality

The new E2E test follows good practices:

  • Clear logging at each step with PREPARATION_TAG, STEP_TAG, and ASSERTION_TAG
  • Tests both positive paths (saving draft) and negative paths (not saving draft)
  • Verifies draft state persistence and retrieval
  • Includes WorkManager task handling for submission

Minor Observations

The @Stub annotation updates clarify that the failures are specifically "Worker issue" related, which is helpful context for anyone investigating those tests later.

@@ -0,0 +1,60 @@
package com.instructure.student.ui.pages.compose
Copy link

Choose a reason for hiding this comment

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

Missing copyright header. This file should include the standard Apache License 2.0 header like the deleted classic version had.

Copy link
Contributor

Choose a reason for hiding this comment

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

Please add copyright header.


@E2E
@Test
@TestMetaData(Priority.COMMON, FeatureCategory.ASSIGNMENTS, TestCategory.E2E)
Copy link

Choose a reason for hiding this comment

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

The test method name test1DraftAssignmentE2E has an unusual "1" prefix. Consider renaming to testDraftAssignmentE2E to match the naming convention of other tests in this file.

@github-actions
Copy link

github-actions bot commented Jan 7, 2026

📊 Code Coverage Report

✅ Student

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

✅ Teacher

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

✅ Pandautils

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

📈 Overall Average

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

@github-actions
Copy link

github-actions bot commented Jan 7, 2026

🧪 Unit Test Results

✅ 📱 Student App

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

✅ 🌅 Horizon

  • Tests: 449 total, 0 failed, 0 skipped
  • Duration: 36.652s
  • Success Rate: 100%

✅ 📦 Submodules

  • Tests: 2515 total, 0 failed, 0 skipped
  • Duration: 47.372s
  • Success Rate: 100%

📊 Summary

  • Total Tests: 4205
  • Failed: 0
  • Skipped: 0
  • Status: ✅ All tests passed!

Last updated: Thu, 08 Jan 2026 14:40:08 GMT

@github-actions
Copy link

github-actions bot commented Jan 7, 2026

Student Install Page

@@ -0,0 +1,60 @@
package com.instructure.student.ui.pages.compose
Copy link
Contributor

Choose a reason for hiding this comment

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

Please add copyright header.

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