Skip to content

Commit 1477a67

Browse files
Merge branch 'master' into MBL-17659-implement-e2e-test-for-draft-assignment
# Conflicts: # apps/student/src/androidTest/java/com/instructure/student/ui/e2e/compose/AssignmentsE2ETest.kt # apps/student/src/androidTest/java/com/instructure/student/ui/utils/StudentComposeTest.kt # apps/teacher/src/androidTest/java/com/instructure/teacher/ui/e2e/compose/AssignmentE2ETest.kt # automation/espresso/src/main/kotlin/com/instructure/espresso/CustomViewAssertions.kt
2 parents e2598c3 + 91ac109 commit 1477a67

File tree

274 files changed

+9257
-5263
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

274 files changed

+9257
-5263
lines changed

.gitignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@ mkmf.log
3636
parent/app/src/androidTest/java/com/instructure/parentapp/ui/utils/espresso_secrets/
3737
parent/app/src/androidTest/java/com/instructure/parentapp/ui/data/
3838
dataseedingapi/out/
39-
soseedygrpc/out/
40-
dataseedingapi/src/main/java/com/instructure/soseedy/
4139
local.properties
4240
libs/canvas-api-2/target/pacts/
4341
apps/true/

android-vault

apps/.claude/skills/pr/SKILL.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -105,14 +105,17 @@ Provide a user-facing description of changes. This should be:
105105

106106
Complete the following items before marking PR as ready:
107107

108-
- [ ] Dark/light mode testing
109-
- [ ] Landscape/tablet testing
110-
- [ ] Accessibility testing
111-
- [ ] Product approval (if needed)
108+
- [ ] Follow-up e2e test ticket created or not needed
109+
- [ ] Run E2E test suite
110+
- [ ] Tested in dark mode
111+
- [ ] Tested in light mode
112+
- [ ] Test in landscape mode and/or tablet
113+
- [ ] A11y checked
114+
- [ ] Approve from product
112115

113116
## Important Notes
114117

115-
- **DO NOT** include E2E tests or screenshots sections unless specifically needed
118+
- **DO NOT** include this checkbox item "- [ ] Run E2E test suite" or screenshots sections unless specifically needed
116119
- Always include the `affects:` field to specify which apps are impacted
117120
- Reference the related issue(s) with `refs:`
118121
- Complete the checklist before marking the PR as ready for review

apps/parent/src/androidTest/java/com/instructure/parentapp/ui/e2e/classic/HelpMenuE2ETest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,9 @@ class HelpMenuE2ETest : ParentComposeTest() {
7878
Intents.init()
7979

8080
try {
81-
helpPage.assertHelpMenuURL(HelpMenu.SEARCH_GUIDES_TITLE, "https://community.canvaslms.com/t5/Canvas/ct-p/canvas")
81+
helpPage.assertHelpMenuURL(HelpMenu.SEARCH_GUIDES_TITLE, "https://community.instructure.com/en/all-guides")
8282
helpPage.assertHelpMenuURL(HelpMenu.SUBMIT_FEATURE_TITLE, "https://community.canvaslms.com/t5/Idea-Conversations/idb-p/ideas")
83-
helpPage.assertHelpMenuURL(HelpMenu.SHARE_LOVE_TITLE, "https://community.canvaslms.com/t5/Canvas/ct-p/canvas")
83+
helpPage.assertHelpMenuURL(HelpMenu.SHARE_LOVE_TITLE, "market://details?id=com.instructure.parentapp")
8484
}
8585
finally {
8686
Intents.release()

apps/parent/src/main/java/com/instructure/parentapp/di/feature/GradesModule.kt

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ package com.instructure.parentapp.di.feature
2020
import com.instructure.canvasapi2.apis.AssignmentAPI
2121
import com.instructure.canvasapi2.apis.CourseAPI
2222
import com.instructure.canvasapi2.managers.graphql.CustomGradeStatusesManager
23-
import com.instructure.pandautils.features.grades.GradesBehaviour
2423
import com.instructure.pandautils.features.grades.GradesRepository
25-
import com.instructure.parentapp.features.grades.ParentGradesBehaviour
24+
import com.instructure.pandautils.features.grades.GradesViewModelBehavior
2625
import com.instructure.parentapp.features.grades.ParentGradesRepository
26+
import com.instructure.parentapp.features.grades.ParentGradesViewModelBehavior
2727
import com.instructure.parentapp.util.ParentPrefs
2828
import dagger.Module
2929
import dagger.Provides
@@ -45,9 +45,7 @@ class GradesModule {
4545
}
4646

4747
@Provides
48-
fun provideGradesBehaviour(
49-
parentPrefs: ParentPrefs
50-
): GradesBehaviour {
51-
return ParentGradesBehaviour(parentPrefs)
48+
fun provideGradesViewModelBehavior(): GradesViewModelBehavior {
49+
return ParentGradesViewModelBehavior()
5250
}
5351
}

apps/parent/src/main/java/com/instructure/parentapp/features/courses/details/CourseDetailsScreen.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,8 @@ private fun CourseDetailsScreenContent(
176176
applyOnWebView = applyOnWebView,
177177
onLtiButtonPressed = {
178178
actionHandler(CourseDetailsAction.OnLtiClicked(it))
179-
}
179+
},
180+
baseUrl = uiState.baseUrl
180181
)
181182
}
182183
}

apps/parent/src/main/java/com/instructure/parentapp/features/courses/details/CourseDetailsUiState.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ data class CourseDetailsUiState(
3333
val tabs: List<TabType> = emptyList(),
3434
val currentTab: TabType? = null,
3535
val syllabus: String = "",
36-
val snackbarMessage: String? = null
36+
val snackbarMessage: String? = null,
37+
val baseUrl: String? = null
3738
)
3839

3940
enum class TabType(@StringRes val labelRes: Int) {

apps/parent/src/main/java/com/instructure/parentapp/features/courses/details/CourseDetailsViewModel.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,10 @@ import android.content.Context
2121
import androidx.lifecycle.SavedStateHandle
2222
import androidx.lifecycle.ViewModel
2323
import androidx.lifecycle.viewModelScope
24+
import com.instructure.canvasapi2.models.CanvasContext
2425
import com.instructure.canvasapi2.models.Course
2526
import com.instructure.canvasapi2.models.Tab
27+
import com.instructure.canvasapi2.models.toBaseUrl
2628
import com.instructure.canvasapi2.type.EnrollmentType
2729
import com.instructure.canvasapi2.utils.ApiPrefs
2830
import com.instructure.canvasapi2.utils.weave.catch
@@ -70,7 +72,8 @@ class CourseDetailsViewModel @Inject constructor(
7072
_uiState.update {
7173
it.copy(
7274
isLoading = true,
73-
studentColor = parentPrefs.currentStudent.studentColor
75+
studentColor = parentPrefs.currentStudent.studentColor,
76+
baseUrl = CanvasContext.emptyCourseContext(courseId).toBaseUrl()
7477
)
7578
}
7679

apps/parent/src/main/java/com/instructure/parentapp/features/courses/details/CourseDetailsWebViewScreen.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ internal fun CourseDetailsWebViewScreen(
4444
studentColor: Int,
4545
onRefresh: () -> Unit,
4646
applyOnWebView: (CanvasWebView) -> Unit,
47-
onLtiButtonPressed: (String) -> Unit
47+
onLtiButtonPressed: (String) -> Unit,
48+
baseUrl: String? = null
4849
) {
4950
val pullRefreshState = rememberPullRefreshState(
5051
refreshing = isRefreshing,
@@ -62,7 +63,8 @@ internal fun CourseDetailsWebViewScreen(
6263
ComposeCanvasWebViewWrapper(
6364
content = html,
6465
onLtiButtonPressed = onLtiButtonPressed,
65-
applyOnWebView = applyOnWebView
66+
applyOnWebView = applyOnWebView,
67+
baseUrl = baseUrl
6668
)
6769
PullRefreshIndicator(
6870
refreshing = isRefreshing,

apps/parent/src/main/java/com/instructure/parentapp/features/courses/details/frontpage/FrontPageScreen.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,8 @@ internal fun FrontPageContent(
9494
studentColor = uiState.studentColor,
9595
onRefresh = { actionHandler(FrontPageAction.Refresh) },
9696
applyOnWebView = applyOnWebView,
97-
onLtiButtonPressed = onLtiButtonPressed
97+
onLtiButtonPressed = onLtiButtonPressed,
98+
baseUrl = uiState.baseUrl
9899
)
99100
}
100101
}

0 commit comments

Comments
 (0)