@clickview/ship-it 0.0.16 → 0.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/dist/A2/A2 Testing Notes.csv +518 -0
  2. package/dist/A2/Batch.Api.md +37 -0
  3. package/dist/A2/ClickView.Curator.md +17 -0
  4. package/dist/A2/Clients.md +23 -0
  5. package/dist/A2/Discover.Api.md +14 -0
  6. package/dist/A2/FileGenerator.md +8 -0
  7. package/dist/A2/Krakend.md +25 -0
  8. package/dist/A2/Library.Api.md +13 -0
  9. package/dist/A2/Lite.md +27 -0
  10. package/dist/A2/Master.Auth.md +52 -0
  11. package/dist/A2/Objects.Api.md +8 -0
  12. package/dist/A2/Permissions.Api.md +12 -0
  13. package/dist/A2/Release Notes.md +479 -0
  14. package/dist/A2/Search.Api.md +12 -0
  15. package/dist/A2/Subjects.API.md +22 -0
  16. package/dist/A2/Users.Api.md +63 -0
  17. package/dist/A2/clickview.md +83 -0
  18. package/dist/A2/index.app.md +15 -0
  19. package/dist/Z2/Analytics Web.md +7 -0
  20. package/dist/Z2/Batch.Api.md +13 -0
  21. package/dist/Z2/ClickView Online.md +19 -0
  22. package/dist/Z2/ClickView.Cron.md +8 -0
  23. package/dist/Z2/ClickView.Curator.md +39 -0
  24. package/dist/Z2/Clients.md +31 -0
  25. package/dist/Z2/Discover.Api.md +12 -0
  26. package/dist/Z2/Domain.Api.md +31 -0
  27. package/dist/Z2/Image.Api.md +12 -0
  28. package/dist/Z2/Krakend.md +33 -0
  29. package/dist/Z2/LTI.md +8 -0
  30. package/dist/Z2/Launch.Web.md +9 -0
  31. package/dist/Z2/Library Editor.md +7 -0
  32. package/dist/Z2/Library.Api.md +13 -0
  33. package/dist/Z2/Lite.md +32 -0
  34. package/dist/Z2/Master.Auth.md +16 -0
  35. package/dist/Z2/Objects.Api.md +9 -0
  36. package/dist/Z2/Prospect.Api.md +17 -0
  37. package/dist/Z2/RealtimeSalesforceSync.md +19 -0
  38. package/dist/Z2/Release Notes.md +549 -0
  39. package/dist/Z2/Users.Api.md +13 -0
  40. package/dist/Z2/clickview.md +135 -0
  41. package/lib/src/constants/MonorepoPackageJsonFiles.js +2 -1
  42. package/lib/src/constants/ProjectNames.js +1 -0
  43. package/lib/src/constants/TeamCityBuildIDs.js +1 -0
  44. package/lib/src/tasks/InstallPackagesTask.js +3 -1
  45. package/lib/src/tasks/ValidateTask.js +3 -2
  46. package/package.json +1 -1
  47. package/dist/A3/ClickView Online.md +0 -28
  48. package/dist/A3/ClickView.Curator.md +0 -19
  49. package/dist/A3/Clients.md +0 -21
  50. package/dist/A3/Domain.Api.md +0 -15
  51. package/dist/A3/Krakend.md +0 -33
  52. package/dist/A3/Library Editor.md +0 -0
  53. package/dist/A3/Lite.md +0 -35
  54. package/dist/A3/Master.Api.md +0 -10
  55. package/dist/A3/Master.Auth.md +0 -51
  56. package/dist/A3/Release Notes.md +0 -683
  57. package/dist/A3/Subjects.API.md +0 -18
  58. package/dist/A3/Users.Api.md +0 -89
  59. package/dist/A3/clickview.md +0 -325
  60. package/dist/X3/X3 Testing Notes.csv +0 -1222
  61. package/dist/X3/X3 Testing Notes.xlsx +0 -0
  62. package/dist/Z1/Analytics Web.md +0 -0
  63. package/dist/Z1/ClickView Online.md +0 -24
  64. package/dist/Z1/ClickView.Cron.md +0 -8
  65. package/dist/Z1/ClickView.Curator.md +0 -28
  66. package/dist/Z1/ClickView.EmailService.md +0 -17
  67. package/dist/Z1/Clients.md +0 -29
  68. package/dist/Z1/Discover.Api.md +0 -20
  69. package/dist/Z1/Domain.Api.md +0 -34
  70. package/dist/Z1/FileGenerator.md +0 -13
  71. package/dist/Z1/Image.Api.md +0 -14
  72. package/dist/Z1/Krakend.md +0 -8
  73. package/dist/Z1/Library Editor.md +0 -0
  74. package/dist/Z1/Lite.md +0 -47
  75. package/dist/Z1/Master.Auth.md +0 -43
  76. package/dist/Z1/Objects.Api.md +0 -30
  77. package/dist/Z1/Permissions.Api.md +0 -10
  78. package/dist/Z1/Prospect.Api.md +0 -16
  79. package/dist/Z1/RealtimeSalesforceSync.md +0 -16
  80. package/dist/Z1/Release Notes.md +0 -855
  81. package/dist/Z1/Search.Api.md +0 -19
  82. package/dist/Z1/Share.Api.md +0 -12
  83. package/dist/Z1/Ship It.md +0 -23
  84. package/dist/Z1/Subjects.API.md +0 -16
  85. package/dist/Z1/Users.Api.md +0 -26
  86. package/dist/Z1/VideoProcessorService.md +0 -11
  87. package/dist/Z1/Z1 Testing Notes.csv +0 -1079
  88. package/dist/Z1/Z1 Testing Notes.xlsx +0 -0
  89. package/dist/Z1/clickview.md +0 -316
  90. /package/dist/{A3/Analytics Web.md → Z2/Permissions.Api.md} +0 -0
@@ -1,18 +0,0 @@
1
-
2
- # Customer changes
3
- - Curriculum links should be sorted alphabetically.
4
-
5
-
6
- # Code changes
7
- - Alphabetically sort paths returned by classification paths endpoints. Fixes INBOX-4857:
8
- - `v1/presentations/{presentationId}/objects/{masterObjectId}/classifications/paths`
9
- - `v1/customers/{customerId}/users/{userId}/objects/{masterObjectId}/classifications/paths`
10
-
11
- - Bump `Subjects.Common` to final version for `1.20.1`
12
-
13
-
14
- # Testing
15
- - Ensure [curriculum links](https://www.staging.clickview.net/videos/25918299/1-times-table) are ordered alphabetically.
16
-
17
- - N/A
18
-
@@ -1,89 +0,0 @@
1
-
2
- # Before release
3
- * [ ] Update `ClickView.Clients.*` nuget to the stable release version
4
-
5
- * [ ] Run `004-approved_domains_drop_columns.sql` script to drop both `Deleted` and `DateDeleted` columns
6
-
7
- - Update `ClickView.Clients.Prospect` to release version
8
-
9
- * [ ] Update `ClickView.Clients` to release versions
10
-
11
-
12
- # Customer changes
13
- * Fixed an issue where an exception is thrown when deleting a user. Close STG-394
14
-
15
-
16
-
17
- # Code changes
18
- * Update `ClickView.Clients.Master` to use the latest change in nuget package
19
- * Fixed a compilation error introduced in this MR https://gitlab.cvinternal.net/clickview/back-end/users.api/-/merge_requests/187
20
-
21
- * Include `Id` in the `SetApprovedDomainError` so that the frontend can use it to map the error if an `Id` is available
22
- * Validate all input domains and return error per domain if any
23
-
24
- * Throw `UserNotFoundException` (`404 Not Found` in response) if a user does not exist or has been deleted
25
- * Throw `CreateJoinRequestException` with different problem type (`400 Bad Request` in response) when creating join request
26
- * `create-join-request-failed` error code is returned if no specific problem type is specified
27
- * `user-type-not-supported` error code is returned if attempting to create join request for a learner account
28
- * `join-not-required` error code is returned if the user is already part of the customer
29
- * `join-request-already-pending` error code is returned if the user has already had a pending join request
30
- * `join-request-already-denied` error code is returned if the user has already had a denied join request
31
- * `user-email-invalid` error code is returned if the user does not have a valid email
32
- * `user-email-domain-not-approved` error code is returned if the user's email domain is not an approved domain
33
- * `join-request-not-allowed` error code is returned if the customer does not want any user to request to join
34
- * Allow new join request notification to be sent for `AccessType.RequiresApproval` and `AccessType.Anyone`
35
- * Set join request to `JoinRequestStatus.Approved` only if the customer's approved domain access type is `AccessType.Immediate`
36
- * Allow unverified email to be used for approved domain verification
37
-
38
- * Add new endpoint `POST v1/invites/internal` to allow sign up app in lite to create invitation on behalf of customer if the customer has full access and has auto-join enabled.
39
-
40
- * Update `CreateTrialAsync(ulong userId, CreateTrialRequest request)` to allow user to be added to the paid customer if the customer has auto join enabled and no braze and analytics event will be logged in this case
41
-
42
- * Add a new endpoint `PUT v1/customers/{id}/approved-domains` to bulk add/update/delete domains
43
- * Add new access types
44
- * `NotAllowed` - allow school to opt out join requests specifically, so that no one can request to join the school
45
- * `Anyone` - allow any user to request to join the school
46
- * Hard delete the record if deleting an approved domain is needed
47
- * Add `ApprovedDomainEntity` to separate data layer model from api view model
48
- * Add `UserAutoJoinAllowed` and `UserJoinApprovalRequired` status to `ProspectTrialStatus` enum
49
- * Update `GET v1/trials/prospects/{prosectId}/status` to return two new statuses for the active non-trial customer if they have approved domain setup to allow join request
50
- * Add `SetApprovedDomainError` to be included in `problems` property in the `400 Bad Request` response with error code `domain-validation-failed` if there is any error while setting the approved domain for a customer
51
- * `domain-duplicated`: The provided domains in the request body contain duplicated domain for the same customer
52
- * `domain-not-certified`: The provided domain is in our domain blacklist
53
- * `domain-already-exists`: The provided domain has already existed
54
- * `domain-empty`: The provided domain is an empty string
55
- * `deletion-item-missing-id`: The Id is not provided when an item is set to be deleted
56
-
57
- - Create an unverified email domain in User API for every new trial. Implements CORE-1124
58
-
59
- - Only allow sign ups for customers with an access policy that has `AllowSignup` set to `true`. Implements INBOX-4744
60
-
61
- - Use ClickView.Clients.Permission instead of local implementation
62
-
63
- - Removed existing Master Api clients
64
- - Added Master Api Clients package
65
- - Reviewed/adjusted all master API endpoints requests.
66
- Implements INBOX-4367
67
-
68
-
69
- # Testing
70
- * A user can be deleted successfully when deleting a user in user manager
71
-
72
- * Setting two domains, one is in the blacklist and another is empty, and two errors should be returned and one for each domain.
73
-
74
-
75
-
76
- * Staff signs in via Google or Microsoft and chooses a paid customer with auto-join enabled, the user should be able to sign in to that school immediately
77
-
78
- * Hitting the endpoint `PUT v1/customers/{id}/approved-domains` with a list of domains should add them for the customer if not exists and update them if they already exists and also delete them if `ShouldDelete` property is set to `true`
79
- * Hitting `GET v1/trials/prospects/{prosectId}/status` endpoint with prospectId that is an active customer and has approved domain setup
80
-
81
- - Create a new trial and then ask Kevin if an unverified email domain has been created.
82
-
83
- - Ensure that sign up doesn't work for a school that has the `bdm_v1` access policy.
84
-
85
- - Sign up for a trial and ensure that the trial banner is shown
86
- - [Create a customer](https://staging.clickviewcurator.com/customers/new) and ensure that they have the correct products
87
-
88
- - All user API features should work as expected
89
-
@@ -1,325 +0,0 @@
1
-
2
- # Dependencies
3
- - Requires https://gitlab.cvinternal.net/clickview/front-end/lite/-/merge_requests/368 and https://gitlab.cvinternal.net/clickview/front-end/lite/-/merge_requests/382
4
- - https://gitlab.cvinternal.net/clickview/front-end/lite/-/merge_requests/381
5
- - Builds upon https://gitlab.cvinternal.net/clickview/front-end/clickview/-/merge_requests/3153, which should be merged first
6
- - Requires changes from https://gitlab.cvinternal.net/clickview/front-end/clickview/-/merge_requests/3150
7
- - https://gitlab.cvinternal.net/clickview/front-end/ClickView.Curator/-/merge_requests/1120
8
-
9
- # Auth
10
-
11
- ## Customer changes
12
- - [Internal Access] When signing in via google or microsoft, users will now be prompted to tell us if they are an educator or a student.
13
- - [Internal Access] When signing into auth with a user that has no customers (i.e. Google and Microsoft sign up), you will be prompted to selected a prospect using the prospect selector from the Lite sign up. If you select an active customer who has correctly configured their domain settings, you will be able to either request to join the school, or automatically join the school, depending on the domain settings setup.
14
- - Added new job titles when signing up. Implements INBOX-4840.
15
- - `Head of Subject` for AU
16
- - `Subject lead` for US
17
-
18
- ## Code changes
19
- - Auth is now importing common, shared and analytics. As it currently stands, we will have to run a bundle analyzer with every release of auth to ensure that legacy dependencies are not pulled in, until we can come up with a dependency validation solution for the project.
20
- - The `CustomerView` is not immediately redirecting to the `ProspectSelectView` if the user does not have any customers.
21
- - The `IdpButton` has been split out into `IdpButton` and `GlobalIdpButton`.
22
- - `GlobalIdpButton` is used for IDPs that are displayed before we have a username or email.
23
- - `IdpButton` is used to select SSO after we are able to use the username or email to pull a list of IDPs (Which are just school names for any SAML setups)
24
-
25
- # Common
26
-
27
- ## Code changes
28
- - Added support for appLink middleware processing in the `BaseAppRouter`
29
- - Update DateHelper isValid method.
30
- - Remove `useSetPageTitle`
31
- - Removed `PageTitleContext`
32
- - Replaced all usage of `useSetPageTitle` with `useSetPageMetadata`
33
-
34
- # Curator
35
-
36
- ## Customer changes
37
- - Added video title to Tags tab on video edit page in Curator. Implements INBOX-4867
38
- - (dev only) Curation studio now contains a search bar and filter buttons that don't work. Implements CC-533
39
- - Fixed a bug where if you exported a dashboard's videos, or a topic's video table, and any video had commas or a "#" symbol in it, the CSV would be missing content. Fixes INBOX-4843
40
- - (dev only) All forms in the Ingestion stage of Curation Studio have been wired up to backend endpoints (although the form data that's fetched when you open the form is still mocked. any changes you make though will be persisted to the backend). Implements CC-528
41
- - (dev only) Implement bulk actions in the curation studio. Now curator can see the bulk action progress and result in the popup. Implement CC-508
42
- - (dev only) Added a table to the resourcing tab. Implements CC-511
43
-
44
- ## Code changes
45
- - Updated `FullScreenLayoutComponent` to use `PageMetadataContext`
46
- - Added `BreakpointsContextProvider`
47
-
48
- # Library Editor
49
-
50
- ## Code changes
51
- - Replaced all usage of `useSetPageTitle` with `useSetPageMetadata`
52
- - Added `BreakpointsContextProvider`
53
-
54
- # Lite
55
-
56
- ## Customer changes
57
- - Product urls will now contains a contextual school-level segment (aka presentation slug), reflecting the content they can access.
58
- - There is an explicit set of valid presentation slugs: `primary`, `secondary`, `tertiary`, `elementary`, `middle`, and `high`.
59
- - Use of any other values will result in a 404 when attempting to load the page.
60
- - Navigating to content within discover, topics, video, series, playlist and latest release will now contain the user's current presentation slug
61
- - For example: `/primary/topics` or `/secondary/video/`
62
- - In a context where a user has access to multiple presentations, using the presentation switcher will change their presentation and in turn, update their current urls.
63
- - When searching for a topic, the topic's parent presentation will now dictate the presentation slug for that link (as opposed to the user's current nominated presentation).
64
- - For example, searching for "Maths" in the US will yield topic results from multiple presentations. Selecting any one of these topics will navigate to the topic and set the presentation slug for that presentation.
65
- - This does not modify the user's underlying presentation selection and instead only exists for browsing. The presentation selector should remain unchanged in this circumstance.
66
- - Videos displayed in search results will currently use the user's existing presentation, this is due to the fact that a video can exist in multiple presentations.
67
- - All former urls (without the presentation slug) will continue to resolve and work as expected. All subsequent links with the product after that initial page load will incorporate the users' nominated presentation (applies to both public and authenticated states).
68
- - Specific contextual details:
69
- - For public/anonymous browsing:
70
- - The base region URL (i.e. `/au`, `/us`) will continue to prompt the user to select a presentation if they haven't already nominated one
71
- - Where a user accesses the public product via a URL containing the presentation slug, they will _not_ be prompted to nominate a presentation and the page will load as expected
72
- - All former public urls (without the presentation slug) will continue to resolve and work as expected. All subsequent links with the product after that initial page load will incorporate the users' nominated presentation.
73
- - For authenticated browsing:
74
- - The region segment should not be part of the url (as in public), but the presentation slug should be present.
75
- - Videos within `My Videos`, `Favorites` and `My Shares` will all contain slugs using the user's current presentation. This includes videos that the user has uploaded themselves. While this doesn't explicitly fit the model of content being contextual to a school-level, it was a trade-off made to ensure consistency across all videos.
76
- - It is currently not possible to access a link that contains a presentation slug not used in the user's own region.
77
- - For example: A US user accessing a url that has `primary` or `secondary` in the URL will not resolve correctly as it's not part of their available presentation set.
78
- - In future, we will prompt the user that they're attempting to access content outside of their region and re-direct them to the appropriate matching topic in their own presentation. This was not in scope of the current changes.
79
- - The "View usage" actions on clips and videos, and "View results" action on interactives will no longer appear for users who don't have access to the analytics product, such as free trial users. Fixes INBOX-4858
80
- - Fix the video count in the playlist header is not updating when a video is removed. Fix INBOX-4865
81
- - [Internal Access] When signing up, added the ability to automatically join active customer accounts, if they have set their domain settings to allow you to do so.
82
- - Now, public user can see special event calendar in Lite. Implements LTE-1871
83
- - Now if you try to visit calendar with an invalid month, a error state page will be displayed.
84
- - Now in content permission page, there is a link to learn more about content permission. Implements INBOX-4830
85
- - Fixed an issue where the "add to library" action would sometimes fail. Fixes INBOX-4852
86
- - Audience badges for UK Primary will now be more abbreviated (implements INBOX-4771). Some examples include:
87
- - "Reception" will now be shortened to "R" if it is displayed in a range, e.g. "R - Upper KS2"
88
- - If the range is "Lower Key Stage X - Upper Key Stage X" the "Upper" and "Lower" words will now be shortened to "U" and "L". Example: "L KS2 - KS2"
89
- - Added new job titles when signing up. Implements INBOX-4840
90
- - `Head of Subject` for AU
91
- - `Subject lead` for US
92
- - Clicking on a resource on the public play page will now display the sign-up popup
93
-
94
- ## Code changes
95
- - Add `presentationSlug` segment to discover, topics, video, series, playlist and latest release URLs
96
- - Added new middleware for processing URL segments and applink resolution
97
- - `RegisterRouteMiddleware` is executed at start up to manage:
98
- - Region prefix resolution by an AppRouter
99
- - Presentation slug resolution by an AppRouter
100
- - Creates "synthetic" routes for all valid presentation routes. These are not exposed to underlying applications and allow existing applinks to be resolved transparently.
101
- - `RegisterAppLinkMiddleware` is executed at start up to manage:
102
- - Interception and mutation of applinks during route execution
103
- - There's 3 lifecycle methods:
104
- - `onBeforeExecute`: Used to augment an applink when building hrefs and internal route lookups
105
- - `onExecute`: Used to augment an applink _before_ out Filter middleware executes
106
- - `onAfterExexcute`: Used to augment an applink after Filter middleware has executed, but before invoking the routes method handler in an application. With this mechanism it's possible to modify which args and params are passed down to the application layer.
107
- - Removed legacy `DashboardView` and `ClassificationView`
108
- - We'll be able to deprecate the domain options as a result of this
109
- - Remove the `monthDate` query param, and add it to the route.
110
- - Fixed a bug where sometimes making a library request would fail because the `sourceCategoryId` wasn't in the `sourceLibraryId`. Now, the `sourceCategoryId` will always be a category within the `sourceLibraryId`.
111
- - Add local permission for `ViewVideoResourceItems`
112
- - Add `canViewResourceItems` to `useVideoFeatureAccess`
113
- - Update `childAppLink` handling for public `ResourceWidgetItem`
114
- - Replace all usage of `useSetPageTitle` in `projects/lite/*` with `useSetPageMetadata`
115
- - Remove unnecessary page title changes for Playlist popups
116
- - Replaced usage of `@include media` with Bootstrap's media query mixin. Partially implements INBOX-4474
117
- - Replaced usage of `useGetMediaQueryString` with `useBreakpoints`. Partially implements INBOX-4474
118
- - Added `BreakpointsContextProvider`
119
-
120
- # Monorepo
121
-
122
- ## Code changes
123
- - Simplified the example .npmrc file (the previous example was deceitful as it worked in some situations but not in others).
124
- - Added some documentation about Node, NPM and `.npmrc` prerequisites.
125
- - Changed the `Getting Started` section to include an initial `npm ci` step and removed the instruction to install `lerna` and `symlin-dir` globally as this does not appear to be necessary anymore.
126
- - Also added `.DS_Store` to the `.gitignore` because MacOS generates these annoying hidden files every time you open a folder using the file explorer.
127
-
128
- # Online
129
-
130
- ## Code changes
131
- - Replaced all usage of `useSetPageTitle` with `useSetPageMetadata`
132
- - Added `BreakpointsContextProvider`
133
-
134
- # Reports
135
-
136
- ## Code changes
137
- - Replaced all usage of `useSetPageTitle` with `useSetPageMetadata`
138
- - Updated `ReportsLayout` to use `PageMetadataContext`
139
- - Added `BreakpointsContextProvider`
140
-
141
- # Shared
142
-
143
- ## Code changes
144
- - Removed a check that we don't need that was breaking auth sign up.
145
- - Add an invalidation key to the request to remove the video from a playlist to get updated playlist data.
146
- - The sign up app has been re-worked so that a `productName` is passed in by both auth and lite, in order to differentiate behavior. Similarly the `SignUpAjaxUrls` now takes a `productName` in order to define the types that we actually need from our injected URLs.
147
- - Added a `RequestAccess` step and `RequestedAccess` completion step, for requesting to join a school. Currently this is only used by Auth, but will be used by Lite also once the backend support for Lite is completed.
148
- - The `CompletedStepItem` has been reworked so that for students, the same messages and images are shown for the new `user-auto-join-allowed` and 'user-`join-approval-required` trial status.
149
- - The unmanagable `requestTrial` function has been refactored out of the `SearchSchoolStepItem` to try to make it more managable. This hasn't been done in the most elegant way, but has definitely improved the readability.
150
- - Update Calendar applink in DiscoverHeader.
151
- - The sign up app should no longer pull in a large number of dependencies it really doesn't need. i.e. (Backbone, Marionette, Underscore, Moment, every single one of our SVGs)
152
- - Add new SupportArticle Id.
153
- - If a prospect type is `Unknown`, the prospect type will not be sent to braze. Fixes INBOX-4777.
154
- - No longer sending data for braze for a niche use case: If a user selects `I'm an educator` initially, then proceeds to enter their job title as `student` or `parent` in the job title section. NOTE: This change only applies to schools who are not yet supported (i.e. Secondary Schools in AU and UK). Fixes INBOX-4796.
155
- - Add new bulk action type & data & name enum.
156
- - Fix a warning in HoverToPortalContainer when clicking on the thumbnail and jumping to the play page. Fix INBOX-4726
157
- - Added a new `BreakpointsContext`, which calls `useMediaQuery` for each breakpoint and passes the current breakpoint down to all children. This is accessible through the `useBreakpoints` hook. Partially implements INBOX-4474
158
-
159
- # Styles
160
-
161
- ## Code changes
162
- - Replaced usage of `@include media` with Bootstrap's media query mixin. Partially implements INBOX-4474
163
-
164
- # Testing
165
- - In NP:
166
- - Both as an authenticated and public user:
167
- - Topic pages and Discover pages load as expected for Staff, Student and Public.
168
- - Feature switch access to all legacy/non-discover code has been removed.
169
- - The assumption here is that all NP customers + users now have access to Discover-based dashboards + topics
170
- - Major-regression testing is required to ensure that page routes still work as expected
171
- - Discover and topic pages should all load as expected for both Students and Teachers (regression for removal of legacy code)
172
- - Navigating to content within discover, topics, video, series, playlist and latest release will now contain the user's current presentation slug.
173
- - The only exception is where page-loading direct into a legacy link, howevever, all links on the page should have a presentation slug.
174
- - Changing presentations via the switcher should change the presentation URL for subsequent links.
175
- - Loading links without a presentation slug should continue to load as expected (backwards compatibility)
176
- - Searching for a topic that's outside of the user's current presentation and navigating to it should update the URL to be the topic's presentation.
177
- - Page loading a topic that's outside of the user's presentation should load as expected.
178
- - The presentation switcher should always show the user's nominated presentation, even if they're on a page of content that belongs to a different presentation.
179
- - As an authenticated user:
180
- - Discover and topic pages should all load as expected (regression for removal of legacy code)
181
- - Student discover and feed should still work as expected
182
- - The following URLs have been updated to support both public region prefixes and presentation slugs:
183
- - `{presentationSlug}` must be one of the following values `primary`, `secondary`, `tertiary`, `elementary`, `middle`, and `high`.
184
- - Use of any other value should yield a 404
185
- ```
186
- Root:
187
- - Public:
188
- - {region}(/)
189
- - {region}/{presentationSlug}(/)
190
- - Authenticated:
191
- - (/)
192
- - {presentationSlug}(/)
193
- Topics:
194
- - Public:
195
- - {region}/topics(/)
196
- - {region}/topics/:id/topics
197
- - {region}/topics/:id(/:slug)
198
- - {region}/{presentationSlug}/topics(/)
199
- - {region}/{presentationSlug}/topics/:id/topics
200
- - {region}/{presentationSlug}/topics/:id(/:slug)
201
- - Authenticated:
202
- - /topics(/)
203
- - /topics/:id/topics
204
- - /topics/:id(/:slug)
205
- - {presentationSlug}/topics(/)
206
- - {presentationSlug}/topics/:id/topics
207
- - {presentationSlug}/topics/:id(/:slug)
208
- Latest Releases:
209
- - Public:
210
- - {region}/latest-releases
211
- - {region}/latest-releases/:id(/:slug)
212
- - {region}/{presentationSlug}/latest-releases
213
- - {region}/{presentationSlug}/latest-releases/:id(/:slug)
214
- - Authenticated:
215
- - /latest-releases
216
- - /latest-releases/:id(/:slug)
217
- - /{presentationSlug}/latest-releases
218
- - /{presentationSlug}/latest-releases/:id(/:slug)
219
- Discover:
220
- - Public:
221
- - {region}/discover(/)
222
- - {region}/discover/:id/:name
223
- - {region}/{presentationSlug}/discover(/)
224
- - {region}/{presentationSlug}/discover/:id/:name
225
- - Authenticated:
226
- - /discover(/)
227
- - /discover/:id/:name
228
- - /{presentationSlug}/discover(/)
229
- - /{presentationSlug}/discover/:id/:name
230
- Content pages:
231
- - Public:
232
- - {region}/playlists/:id(/:slug)
233
- - {region}/series/:id(/:slug)
234
- - {region}/videos/:id(/:slug)
235
- - {region}/{presentationSlug}/playlists/:id(/:slug)
236
- - {region}/{presentationSlug}/series/:id(/:slug)
237
- - {region}/{presentationSlug}/videos/:id(/:slug)
238
- - Authenticated:
239
- - /playlists/:id(/:slug)
240
- - /series/:id(/:slug)
241
- - /videos/:id(/:slug)
242
- - {presentationSlug}/playlists/:id(/:slug)
243
- - {presentationSlug}/series/:id(/:slug)
244
- - {presentationSlug}/videos/:id(/:slug)
245
- ```
246
- - In LE/Analytics:
247
- - Regression testing of link navigation. Everything should work as expected.
248
- - This one need only be quick. They use the same app router we use in NP, so we just need to make sure it hasn't broken anything.
249
- - Share links for video, playlists should continue to resolve.
250
- - Video links that are resolved via launch should continue to work as expected (for example, those from RSS)
251
- - As a trial user, you should not be able to see the "View usage" action on videos you have uploaded to NP.
252
- - In lite, viewing a playlist, remove videos from the list. The video count in the header should be updated accordingly.
253
- - In the Curator, editing tags of a video, there should be a video title on the top.
254
- - In Lite, an anonymous user should able to visit Calendar page.
255
- - In Lite, visit an invalid calendar page, (`/calendar/{date}` where the date doesn't align to MMM-YYYY format), an error state should be displayed. There is an link navigate you back to the current month calendar page.
256
- - In lite, got to `/settings/content-permissions` page, there should be a link to this support article: https://support.clickvieweducation.com/hc/en-au/articles/14692125209497-Content-Permissions-and-Year-Group-Access
257
- - Export a topic's video table in Curator, when one of the video names has a "#" or a "," in it. The exported CSV should contain all of the video information but the "#" and "," should be removed from the names.
258
- - Export a topic dashboard's videos in Curator, when one of the video names has a "#" or a "," in it. The exported CSV should contain all of the video information but the "#" and "," should be removed from the names.
259
- - Check out https://clickview.atlassian.net/browse/INBOX-4852. Sometimes, the "add to library" request would fail. Test this on a few ClickView videos and they should all work. Preferably test this on an account whose customer has a lot of libraries associated.
260
- - Audience badges for UK Primary will now be more abbreviated. Some examples include:
261
- - "Reception" will now be shortened to "R" if it is displayed in a range, e.g. "R - Upper KS2"
262
- - If the range is "Lower Key Stage X - Upper Key Stage X" the "Upper" and "Lower" words will now be shortened to "U" and "L". Example: "L KS2 - KS2"
263
- - In NP:
264
- - As an authenticated user:
265
- - Clicking on resource items should continue to show the resource preview as expected (regression)
266
- - As a public user:
267
- - Clicking on resource items will now display the sign-up popup. The one exception is link resources, which continue to function as they do today.
268
- - In LE:
269
- - General regression test of page titles. All titles should continue to update in the browser while browsing the product.
270
- - In Reports/New Analytics:
271
- - General regression test of page titles. All titles should continue to update in the browser while browsing the product.
272
- - In Online:
273
- - General regression test of page titles. All titles should continue to update in the browser while browsing the product.
274
- - Dashboard, Topics (inc Content Updates), Workspace Edit Video page, Exchange landing, M+TV Landing and Playlists page should load as expected with page titles set.
275
- - Creating a playlist, editing the playlist details and deleting a playlist should all update the page title while the popup is on screen, then revert back to the old page title once the popup closes.
276
- - In NP:
277
- - General regression test of all core pages to ensure that the page title is being set
278
- - Areas of focus (newer react-based pages):
279
- - Play video in playlist
280
- - Edit video in playlist
281
- - Remove video from playlist
282
- - Delete playlist
283
- - View classification/topic playlist
284
- - Userman: Bulk user upload account review page
285
- - Userman: Staff management page
286
- - Userman: Student management page
287
- - Share playlist popup
288
- - In NP:
289
- - As an authenticated user:
290
- - All pages should continue to correctly update the title page when navigating throughout the product (regression test)
291
- - As a public user:
292
- - All public pages should continue to correctly update the title page when navigating throughout the product (regression test)
293
- - Dev test: `description` meta tag should now be populated on all content pages
294
- - In Curation Studio, in the ingestion tab, test every single form for the first video in the table (called "Harry Potter and the Sorcerers Stone"). When you open each form, the data will be incorrect (which is fine because the fetching part is mocked still). But, when you make changes in the form and hit "save", these will be persisted in the database for video with ID `3713754`. If you refresh this page: https://staging.clickviewcurator.com/hostedlibraries/programs/3713754, the changes you made should be visible in that form (although they won't be visible in curation studio yet).
295
- - In the assembly line, all the bulk actions, except 'Add to libraries', should be working when you use real video id from staging.
296
- - n/a
297
- - Regression test the responsiveness of a curated topics page is the same as in production
298
- - Regression test the responsiveness a play page is the same as in production
299
- - Regression test the responsiveness of the discover page is the same as in production
300
- - Regression test the responsiveness of a playlist page is the same as in production
301
- ### Regression tests
302
- We need to test signing up for one of each of the following types of prospects from Lite. The prospect status can be checked by looking for the `/v1/prospects/_146766174306594881/trial-status` request in the network tab before submitting the school select form:
303
- - `active` Customer who is currently trialing
304
- - `not-required` Customer who already has full access
305
- - `available` Customer does not exist
306
- - `unsupported` Secondary school in UK or AU
307
- - Can't find my school (not a status, but needs a good test)
308
- ### New feature tests
309
- Testing these features will require help from development to set up certain parameters properly, as it will require writing directly to databases. Talk to Sha or Ryan, they should be able to help you set stuff up.
310
- #### Auth
311
- 1. Go to auth, and use the following command in the console to set cookies to opt into features.
312
- ```
313
- document.cookie = "features.social-signup=true;";
314
- document.cookie = "features.user-no-customers=true;";
315
- document.cookie = "features.account-linking=true;";
316
- ```
317
- These cookies are set up to only last your session.
318
- 2. Click on the sign in button from Lite (This is important), and then when you get to auth add the `&emulateUSA=true` query param.
319
- 3. Sign in with Google and/or Microsoft
320
- 4. Select `Educator`
321
- 5. Repeat all of the tests that are listed under Testing -> Sign up changes -> Regression tests, but for Lite
322
- 6. With a school who has a request to join domain settings set up, request to join a school.
323
- 7. With a school who has auto join domain set up, request to join a school.
324
- #### Lite
325
- 1. With a school who has auto join domain set up, request to join a school.