h1. Checkvist: Test Plan h3. Incorrect login with Humanized error reporting h3. User registration * empty username * non-matching passwords * verify error messages and green OK messages * verify welcome e-mail h3. Working with checklists * Create checklist ** from index page ** from Checklists popup ** Undo ** edit name right after creation ** create task after saving checklist name * Delete checklist ** from checklist page, with undo ** from index page, bulk delete, with undo * Edit checklist name ** In Opera, with single click ** cancel editing ** submit editing with button; with Enter * Archive checklists ** Undo ** Switch lists on home page ** Archive/Unarchive from index page ** Archive/Unarchive from checklist page * Checklist sorting on index page ** Shall be preserved after logout/login * Keyboard and mouse navigation for Checklists list in navigation * Completed tasks progress, popup with details h3. Working with task tree * Create task ** create subtask ** alt-enter creates a task in the place of selection ** tab/shift-tab for reordering while creting ** create several tasks fast * Tree navigation ** Up/Down ** Collapse/Expand tasks ** Collapse/Expand notes ** Collapse all/Expand all ** Collapse/expand branch with Ctrl-Alt-<> * Edit task ** Start editing task (F2/F4, double-click) ** Cancel editing: ESC, red cross ** Confirm editing: click ouside, click on Save, Enter ** Shift-Enter for multiline * Delete task ** several in a row ** Delete key ** undo ** delete task by removing task text *** save *** enter * HTML task content ** Shall render a link as a link ** Shall allow to insert links via <a> tag * Complete/Invalidate/Reopen ** one task ** task with subtasks ** several in a row ** undo * Copy/Cut/Paste ** within same checklist ** to another checklist ** with subtasks ** undo * Tasks reordering ** Keyboard: Up/Down, Left/Right ** Mouse: DnD with shift pressed * Notes ** add note ** edit note ** delete note * Tasks coloring ** Color with keyboard ** Color with popup ** Reset color ** Remember current setting of Foreground/Background * Due functionality ** Due options *** today *** tomorrow *** asap *** overdue ** Due dialog *** show current due, if present *** add due - no clear due link expected *** various syntax *** clear due *** asap link ** Task adding/editing with due *** various syntax *** can clear due *** can avoid parsing with dot at the end ** Notifications ** Due tab *** Change due link *** Color is shown *** Print mode * Details on mode ** add task ** edit task ** add note * Move completed down mode ** add task in "completed" section ** complete/reopen task h3. Extract checklist command (also known by xx shortcut) h3. Navigate to link shortcut (gg) h3. Task actions menu (shortcut aa) * Invoke from toolbar * Invoke with keyboard * xx comand is disabled when no children * all commands work * all shortcuts work when actions popup is open h3. Bulk Copy/Move * All options * Change button text Copy<->Move * Target checklist options ** new checklist ** existing checklist ** No current checklist in the target list * Undo in all cases h3. Import * Plain text format ** multi-level tasks addition * Confluence format * OPML format * Undo * Option to replace existing tasks with imported ones ** When selection is present on a child task ** Shall replace title if imported from OPML ** undo * Contextual import ** with existing tasks on the same level ** with undo ** without selection - imported shall go to top h3. Export * All formats * All options * Export all lists to zip h3. Sorting tasks * All variants * Move completed tasks down if corresponding option is selected in "View options" * Do not move completed tasks down if corresponding option is NOT selected in "View options" h3. Sidebar * show/hide ** remember state after logout/login * All actions in sidebar * Full/concise mode for the sidebar h3. Sharing * Invitation ** email address completion ** custom text inclusion ** send a copy of notification to self * Accepted invitations * Per-checklist share dialog on the main index page * Unsharing ** From dialog ** From checklist page ** Undo from dialog ** Undo from checklist page * Notifications ** Test changes for notification message *** Task **** created **** deleted **** deleted with subtasks - should include corresponding note **** edited **** status changed (all states) *** note added/changed *** checklist title edited *** task moved to another checklist *** import tasks ** Notifications include actual text of the tasks, and parent task breadcrumbs ** Allow to select users to notify ** If only self selected, link "notify about changes" remains, because considered as a test notification ** Select all/none links appear only if >= 5 users share the checklist * Daily digest ** Test changes for notification (see http://checkvist.com/checklists/3318/tasks/492471 above) ** Sent once a day (can be tested from administration page by kir and sashka :) ** includes only changes in checklists user has access to at the moment of sending ** Subscribe/unsubscribe *** From checklist page *** from user profile page *** can subscribe to public read-only checklists * Read-only publishing ** publish/unpublish *** from checklist page *** from index page ** Access published checklist as guest *** collapse/expand *** view added notes *** export (all options) *** view options memorizing *** print dialog *** links to login/register from copy dialog ** Access published checklist as another user (not owner) *** collapse/expand *** view added notes *** export (all options) *** Copy/paste via ctrl-C/V to own checklist *** Copy/paste whole checklist to own checklist **** move should be unavailable **** copy to new checklist **** copy to existing checklist *** view options memorizing *** print dialog * Read-only sharing ** Invite read-only *** Can invite only from checklists whose author is Pro user *** notification about invitation mentiones read-only access ** Change reader-writer access *** only author can change the access from reader to writer and back *** by now, we do not send a notification when access type is changed ** Read-only access disallows write operations *** create/edit/delete tasks *** change task color *** change checklist name/archive checklist ** Read only access allows *** collapse/expand *** hide completed *** enable/disable task numbering *** subscribe for notifications (for Pro users) ** Read-only access can be used only in checklists whose author is Pro user. And read only invitations are available to non-pro writers to such checklists h3. HTTPS * All users can use HTTPS to ** login ** create new account ** change user profile * Pro users can use HTTPS also for all other operations, like ** View/edit tasks/checklists ** export data ** anything else * Admin access requires! HTTPS and available only to kir/sashka h3. User profile * Change e-mail to exiting one * Change password requires correct confirmation * Customize UI ** Logo ** colors ** custom CSS * Change notification settings * Sample e-mail for due/changes h3. Bookmarklet * Login to bookmarklet ** Incorrect login with Humanized error reporting * Shall include text of the current selection * Shall remember target checklist * Open target checklist after tasks addition, if selected * Ingegrations ** Jira ** Simple link ** YouTrack ** Gmail h3. Printing view * Checklist page ** with notes, due, color etc. * Index page with list of checklists * Due tab h3. Payment * Create new user (starting from Pricing page) * Subscribe ** Press subscribe button ** use some fake account to make the payment ** ensure notification is received (via PayPal UI) ** ensure user was switched to Pro mode * Unsubscribe ** Remove subscription from Checklist UI - ensure pro mode has disappeared ** Remove subscription from PayPal UI - ensure pro mode has disappeared