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

Testing changes from week 8, 2020 #1911

Closed
65 of 75 tasks
dmsnell opened this issue Feb 17, 2020 · 8 comments
Closed
65 of 75 tasks

Testing changes from week 8, 2020 #1911

dmsnell opened this issue Feb 17, 2020 · 8 comments

Comments

@dmsnell
Copy link
Member

dmsnell commented Feb 17, 2020

  • Logout
  • Login with wrong password fails
  • Login with correct password
  • Create new note appears in other device
  • Changes to new note sync to other device
  • Changes to new note sync from other device (after debounce delay)
  • New tag immediately syncs to other device
  • New tag immediately syncs from other device
  • Removed tag immediately syncs to other device
  • Removed tag immediately syncs from other device
  • Note publishes with link
  • Note unpublishes ⭕️ wiped out changes1
  • Note publish change syncs from other device (visible with dialog open)
  • Markdown setting syncs from other device
  • Preview mode disappears/reappears when receiving remote changes to markdown setting
  • Note pinning syncs immediately from either direction
  • Note pinning works regardless if clicking in list view or from note info
  • Viewing history on one device leaves note unchanged on other device
  • Restoring history immediately syncs note from both directions ⭕️ restoring tags fails2, 3
  • Restoring history revisions updates pinned status ⭕️ (known issue, comes in after successive update to note)
  • Restoring history revisions updates markdown status ⭕️ (known issue, comes in after successive update to note)
  • Restoring history revisions updates publish status ⭕️ (known issue, comes in after successive update to note)
  • Can view trashed notes by clicking on Trash
  • Can delete note forever from trash screen
  • Can restore note from trash screen ⭕️ doesn't select restored note4
  • Can trash note
  • Selects note above recently-trashed note ⭕️ selects top note in list 5
  • Selects note above recently-restored note in trash view ⭕️ selects top note in list 5
  • Selects note above recently-deleted-forever note in trash view ⭕️ selects top note in list 5
  • Can preview markdown with 👁 button
  • Can flip to edit mode with 👁 button
  • Markdown rendered in note list when markdown enabled
  • Markdown syntax unrendered in note list when markdown disabled
  • Can filter by tag when clicking on tag in tag drawer
  • Can add tag to note and have it appear in filtered tag view when previously not in filter
  • Can search by keyword with tag selected
  • Searching in the search field highlights matches in note list
  • Searching in the search field highlights matches in the note editor
  • Searching in the search field highlights matches in the note editor during preview ⭕️ (known issue)
  • Clearing the search field immediately updates filtered notes
  • Clicking on different tags or All Notes or Trash immediately updates filtered notes
  • Can search by keyword, filtering debounced
  • Tag auto-completes appear when typing in search field
  • Typing tag: does not result a list of all tags in the autocompleter
  • Typing tag: and something else, like tag:te results in autocomplete results starting with that something else, e.g. test
  • Tag suggestions suggest tags regardless of case
  • Search field updates with results of tag:test format search string
  • Can toggle sidebar
  • Syncs when introducing sequential surrogate pairs sharing the same high surrogate, e.g. 🅰🅱 to 🅰🅰🅱
  • When disabling network connectivity, changes start counting in unsync'ed changes counter
  • When going back online changes sync and counter resets to All chagnes synced
  • Can change analytics sharing setting
  • Changing Note Display mode immediately updates and reflects in note list
  • With sidebar disabled, toggling Line Length between Narrow and Full removes and adds border around note content appropriately and immediately.
  • Changing Sort Type mode immediately updates and reflects in note list
  • Toggling Sort Order immediately updates and reflects in note list for each sort type
  • For each sort type the pinned notes appear first in the note list
  • Changing Theme immediately updates app for desired color scheme
  • Using the Insert checklist item from the format menu inserts a checklist
  • "Undo" undoes the last edit
  • Typing - [x] creates a checked checklist item
  • Typing - [ ] created an unchecked checklist item
  • Typing - creates a list
  • Typing tab in a list item underneath another list item indents item
  • Typing shift tab in the same spot unindents the list
  • Changing - to + changes the list item bullet, also for * and (\u2022)
  • All list bullet types render to markdown lists ⭕️ (known issue, the unicode bullet doesn't render)
  • Added URL is linkified ❓(in preview mode it does)
  • When clicking on link it opens in new window ❓(in preview mode it does)
  • CmdOrCtrl + shift + p toggles preview mode
  • CmdOrCtrl + shift + (k or up) selects next note above current note, stops at top of list
  • CmdOrCtrl + shift + (j or down) selects next note below current note, stops at bottom of list
  • CmdOrCtrl + t toggles tab list
  • CmdOrCtrl + n creates new note
  • CmdOrCtrl + shift + n when in small screen mode navigates to note list

Notable issues

Frozen trash view

This is an odd one. I entered a search string into the search field and waited for the list to filter. Then I turned on preview mode. Then I selected the trash view. The app froze in a weird state for a bit before showing the filtered list of trashed notes matching my search. When I cleared the search field the app froze for another bit before showing the full trash view. The Chrome profiler shows nothing but Rasterizer Thread 1 and Rasterizer Thread 3 for that time and they take the full CPU. Will have to investigate more as there doesn't appear to be a cyclic loop in the execution code. When I tried to open the sidebar and go back to all notes it froze again and this time spent over a second in the Event: pointerout event. Maybe we aren't throttling some handler. I was able to reproduce without the preview step so it appears to be unrelated to that. This was present in the latest web app deployment.

Single-use print

I'm only able to print once it seems. There's a funny behavior on the toolbar when I print and once I've printed once, even though I can open the print dialog again, it doesn't print and there are no errors in the console.

funnyPrintToolbar mov

Also, the cursor was visible in the non-Markdown-rendered preview

Notes

  1. When I had the publish dialog open in the web browser and the build from develop open in Electron and made changes in the Electron window then those changes were wiped out when I closed the dialog in the web. I reproduced this behavior to confirm. The wiped-out changes were available as the most-recent revision of the note. Probably we're saving the entire note when we unpublish instead of only sync'ing the publish status.
  2. When restoring to a version of the note with different tags the tags reappear locally but don't appear remotely. I tested this by restoring on the Electron app and watching the contents in the web app. If I proceed to make a change to the note locally then the remote app will update and insert the tags as expected. Likely this is because the app is watching for the update from Simperium and somewhere we're only looking at note content instead of tags.
  3. I tested in the opposite direction and repeated the results, though restoring in the web app didn't update the note in the Electron app. After restoring remotely, after making a further change to the restored note, I had to switch to a different note in Electron and swap back to get the updates. This is probably a separate issue from (2) since we're looking at different update flows.
  4. When I restore a note I expect it to open in the note editor and to close the trash view - go back to the normal/all-notes view so that I can edit my recently-restored note. It looks like this behavior hasn't changed though.
  5. In Refactor selected note state from flux to redux #1851 we inadvertently broke this behavior and then in Refactors closeNote to Redux #1895 removed the mechanism that had previously enabled it.
@dmsnell dmsnell pinned this issue Feb 17, 2020
@dmsnell dmsnell unpinned this issue Feb 17, 2020
@belcherj
Copy link
Contributor

I was able to print twice. Anything I'm missing?

Screen Shot 2020-02-17 at 4 53 59 PM

@dmsnell
Copy link
Member Author

dmsnell commented Feb 17, 2020

I was able to print twice. Anything I'm missing?

I don't know. I was able to reproduce the bug and I tried with a couple different notes. Nothing as complicated as what you have there though.

@belcherj
Copy link
Contributor

Looks like this is an Electron bug: electron/electron#14705

@belcherj
Copy link
Contributor

When I restore a note I expect it to open in the note editor and to close the trash view - go back to the normal/all-notes view so that I can edit my recently-restored note. It looks like this behavior hasn't changed though.

That is not the current functionality in production. @SylvesterWilmott what should it do?

@SylvesterWilmott
Copy link
Contributor

When I restore a note I expect it to open in the note editor and to close the trash view - go back to the normal/all-notes view so that I can edit my recently-restored note. It looks like this behavior hasn't changed though.

I can see why this would be the expected behaviour in a situation where you are restoring a single note. However, by doing this we would be switching from trash to all notes without an explicit user input to do so. And for the user restoring multiple notes it can get frustrating pretty quickly.

Perhaps what is missing is some feedback that the note has been restored with an action to jump to that note which I think is a broader project to include messaging to the user in the form of snackbars as we do on mobile.

@dmsnell
Copy link
Member Author

dmsnell commented Feb 18, 2020

@belcherj @SylvesterWilmott definitely I didn't intend to trigger design changes here. I noted the behavior because it was unexpected but as we're in the thick of stabilization work I'd be reluctant to introduce destabilizing factors like changing existing behaviors and adding new flows to the app

@belcherj
Copy link
Contributor

When I had the publish dialog open in the web browser and the build from develop open in Electron and made changes in the Electron window then those changes were wiped out when I closed the dialog in the web. I reproduced this behavior to confirm. The wiped-out changes were available as the most-recent revision of the note. Probably we're saving the entire note when we unpublish instead of only sync'ing the publish status.

This bug exists in production.

@belcherj
Copy link
Contributor

belcherj commented Feb 19, 2020

The two issues that I see as regressions are:

  • Frozen trash view
  • Previous note functionality

And from my testing:

  • Revisions slider only contains one revision

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

No branches or pull requests

3 participants