Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hotfixes release for sprint ending 2021-05-24 #3166

Merged
merged 34 commits into from
May 25, 2021

Conversation

bjester
Copy link
Member

@bjester bjester commented May 25, 2021

Summary

  • Upgrades Django backend web framework to version 3.2
  • Further integration of KDS in modals
  • Refactors pagination support to be more robust
  • Adds Brazilian Portuguese language (PT-BR)
PR Issue Category QA Focus
#3127 kds#157, kds#159 Enhancement View policies from login page
Review policies during registration
#3086 N/A Enhancement View admin channel list
View admin user list
View paginated search result resources
View paginated catalog list as logged in user
#3162 #3121 Enhancement View studio in Brazilian Portuguese
#2533 N/A Tech debt Critical workflows
#3160 N/A Security update N/A

QA Scenarios

View policies from login page

  1. Open the login page as unauthenticated user
  2. Click 'Privacy policy' link at the bottom of the page
  3. Verify Privacy policy modal shows
  4. From Privacy policy modal, click 'Terms and Conditions' link
  5. Verify Terms modal shows
  6. Close the modal
  7. Click 'Terms of Service' link at the bottom of the page
  8. Verify Terms modal shows
  9. From the Terms modal, scroll down and click 'Learn more about Studio's community standards'
  10. Verify Community standards modal shows
  11. Close the modal
  12. Click 'Terms of Service' link at the bottom of the page
  13. From the Terms modal, scroll down and click 'Learn more about Studio's privacy policy'
  14. Verify the Privacy policy modal shows

Review policies during registration

  1. Open the login page as unauthenticated user
  2. Click the CREATE AN ACCOUNT button
  3. Scroll down to policies section
  4. Click 'View privacy policy' link
  5. Verify Privacy policy modal shows
  6. From Privacy policy modal, click 'Terms and Conditions' link
  7. Verify Terms modal shows
  8. Close the modal
  9. Click 'View terms of service' link
  10. Verify Terms modal shows
  11. From the Terms modal, scroll down and click 'Learn more about Studio's community standards'
  12. Verify Community standards modal shows
  13. Close the modal
  14. Click 'View terms of service' link again
  15. From the Terms modal, scroll down and click 'Learn more about Studio's privacy policy'
  16. Verify the Privacy policy modal shows
  17. Complete registration, accepting the policies
  18. Verify you're able to complete registration

View admin channel list

  1. Sign into studio as an admin
  2. Open the Administration page
  3. Verify the channel list table pagination (results per page, changing pages) works as expected
  4. Filter the table
  5. Again, verify the channel list table pagination works as expected

View admin user list

  1. Sign into studio as an admin
  2. Open the Administration page
  3. Click the 'User' tab to open the users list
  4. Verify the user list table pagination (results per page, changing pages) works as expected
  5. Filter the table
  6. Again, verify the user list table pagination works as expected

View paginated search result resources

  1. Open an editable channel
  2. Click the ADD button and select 'Import from channels'
  3. Search for a generic term
  4. Verify your search completes and you can paginate through results

View paginated catalog list as logged in user

  1. From the channel list page, click the 'Content Library tab
  2. Search using a generic term in the keyword field
  3. Verify you can paginate through search results as expected

View studio in Brazilian Portuguese

  1. Sign into studio
  2. From the user menu, click 'Change language'
  3. The language switcher modal should appear
  4. Select 'Português' and click Confirm
  5. Verify Studio is sufficiently translated; note: we may make translation fixes or adjustments as we get feedback or as necessary

Critical workflows

bjester and others added 30 commits May 5, 2021 13:50
- get rid of `[vuex] unknown mutation type: policies/SET_POLICIES` error
  by importing the whole policies module and then overriding only
  values that are needed for a test
- remove tests that were prone to giving false positives
  and weren't testing responsibilities of PolicyModals
  component
- user props and events in simpler modal components (PoliciesModal,
  TermsOfServiceModal, PrivacyPolicyModal, CommunityStandardsModal)
  to decouple them from store to make logic simpler and easier to test
- related tests simplifications of PoliciesModal
- related updates of store and PolicyModals component that is now the only
  controller component encapsulating all Vuex logic
- some more tests for PoliciesModal nad PolicyModals
- export getters, mutations, and actions to allow
  testing them directly instead of the need to initialize
  the whole store, similarly to how we test getters etc.
  of our other store modules (this has also allowed
  deletion of mocks that are not related to this test
  suite)
- use hardcoded sample data in tests to improve clarity
  and make orientation in tests faster when reading them
  as documentation
- add more documentation strings to store functions
- move the test for updating `window.user` object to
  plugin.spec.js to make sure that `window.user` will
  be updated every time `setPolicies` mutation is called,
  and not only when `setPolicies` is called from `acceptPolicy`
  action
`KModal`'s content slot is already wrapped in form =>
leaving `VForm` here would result in nested forms,
which is not supported and could result in bugs
(see
https://stackoverflow.com/questions/379610/can-you-nest-html-forms).

- remove `VForm`
- replace `Checkbox` with `KCheckbox` (related to `VForm`
  deletion in terms of validation logic)
- update validation logic to resemble `VForm`'s behaviour
  but to work with `KCheckbox` and native `<form>` in `KModal`
Because `PolicyModals` was in both `UsingStudio` and `SettingsIndex`
components, it was open two times which also caused a focus bug.
This removes `PolicyModals` component from `UsingStudio` and leaves
it only in `SettingsIndex`.
…nsivedialog-policiesmodal

KDS to Studio: Use KModal in policy modals
Master release for sprint ending 2021-05-10
Delete deployed squashed migrations.
Remove tests for removed migrations.
Remove some deprecated calls.
Add ordering support to where command.
…abot/pip/django-registration-3.1.2

Bump django-registration from 3.1.1 to 3.1.2
@bjester bjester requested a review from rtibbles May 25, 2021 20:15
@rtibbles rtibbles merged commit de61db8 into learningequality:hotfixes May 25, 2021
@radinamatic
Copy link
Member

Current testing results:

PR Issue Category QA Focus Status
#3127 kds#157, kds#159 Enhancement View policies from login page
Review policies during registration
✔️
✔️
#3086 N/A Enhancement View admin channel list
View admin user list
View paginated search result resources
View paginated catalog list as logged in user
✔️
✔️
Search issue filed
✔️
#3162 #3121 Enhancement View studio in Brazilian Portuguese Generally ✔️, one i18n issue filed
#2533 N/A Tech debt Critical workflows - Create a channel ✔️
- Create a topic ✔️
- Copy to clipboard ✔️
... and then 502 errors surfaced 🤷🏽‍♀️

@pcenov I mostly worked on Firefox, so please start your testing on Chrome, thank you!

@pcenov
Copy link
Member

pcenov commented May 26, 2021

Tested all of the above listed QA scenarios (non-admin) on Chrome in both Win 10 and Ubuntu + tested the critical workflows.
I was able to find 1 new issue to add to your findings @radinamatic: #3169

@radinamatic
Copy link
Member

Another critical regression issue found today is #3173.

@pcenov
Copy link
Member

pcenov commented May 28, 2021

@radinamatic the following PRs are tested and verified as fixed: #3177, #3176, #3174
I've commented on this one #3172 that the initial error is no longer observed but the search is still not working because of timeout errors.
I've reported another timeout issue here #3178 which is happening every time I attempt to register a new user.

@radinamatic
Copy link
Member

Thank you, @pcenov!

I'll do some more testing to confirm I can replicate, but these still look like blockers to me @bjester.

@radinamatic
Copy link
Member

radinamatic commented Jun 1, 2021

Current testing results:

PR Issue Category QA Focus Status
#3127 kds#157, kds#159 Enhancement View policies from login page
Review policies during registration
✔️
✔️
#3086 N/A Enhancement View admin channel list
View admin user list
View paginated search result resources
View paginated catalog as logged in user
✔️
✔️
Search timeouts
✔️
#3162 #3121 Enhancement View studio in Brazilian Portuguese ✔️
#3177 #3169 Bug fix Redirects using a reverse URL ✔️
#2533 N/A Tech debt Critical workflows Create a channel ✔️
Create a topic ✔️
Copy to clipboard ✔️
Drag out of clipb. ✔️
Delete resources ✔️
Search resources
? #3178 Bug or performance? Create an account Pending

General slowness and 50X errors popping out all the time make me think this is not yet ready to go into production.

@pcenov
Copy link
Member

pcenov commented Jun 2, 2021

@radinamatic today I regression tested the main workflows and the only outstanding issue is the one for the search timeouts which I've reported here: #3186

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.

6 participants