This file presents a master list of WP Clef’s features to facilitate systematic testing before major releases. It is designed to utilize GitHub’s MarkDown checklists. So, to run a full test, copy-n-paste the raw contents of this file into a new GitHub Issue. Then check the boxes as you complete the steps.
Prerequisites
- Love.
- Time.
- Basic testing (~ 5-min. run time): requires a WordPress single-site install with at least one user account for each role.
- Whole-hog, full-boom testing (~ ∞-min. run time): requires bastic testing prereqs plus two WordPress multi-site installs, one for shared domain setups and one for custom domain setups. All super admin and sub-sites should have at least one active user account for each role.
- Cue theme music track 1, track 2, track 3, and smile while pondering how fresh-n-clean Clef is. Awwww yeeeeah.
General Legend:
- SW: Setup Wizard
- WP: WordPress
- WPC: WP Clef (i.e., the Clef plugin for WordPress)
- Deactivate plugin.
- WPC is deactivated, and normal password log in form appears on wp-login.php.
- WPC’s settings are saved in the database (can verify via re-activation: pre-deactivation settings should re-appear).
- Remove previous version of WPC via WP’s plugin uninstaller to ensure a clean install.
- WPC’s files are deleted.
- WPC’s database settings are deleted.
- Clone the repository and checkout the appropriate branch
git clone git://github.com/clef/wordpress.git wpclef
cd wpclef
git checkout [INSERT TESTING BRANCH NAME]
- Activate WPC via WP’s Dashboard > Plugins > Installed Plugins
- SW loads automatically
- "Skip setup" link takes you immediately to settings page
-
"Get started" takes you to Clef Wave screen
-
Text Clef App link successfully.
-
Sync Clef Wave and arrive at "One more click!" screen.
- "Get started" takes you to "One-click setup!" screen.
-
Execute "one-click setup" and arrive at "Invite" screen.
-
Send invite e-mail to Everyone.
-
Send invite e-mail to roles >= Contributor.
-
Send invite e-mail to roles >= Author.
-
Send invite e-mail to roles >= Editor.
-
Send invite e-mail to roles >= Administrator.
-
Send invite e-mail to roles >= Super Administrator.
-
E-mail preview text matches actual e-mail.
-
Arrive at "3 tips" screen after send invite or skip invite.
-
"Go to Clef Settings" loads settings page with graceful slide up.
- Run SW tests (A), (B), and (C) on Super Admin site.
- Run SW tests (A), (B), and (C) on one sub-site.
- Run SW tests (A), (B), and (C) on Super Admin site.
- Run SW tests (A), (B), and (C) on one sub-site.
- Run SW tests (A), (B), and (C) on Super Admin site.
- Run SW tests (A), (B), and (C) on one sub-site.
- Run SW tests (A), (B), and (C) on Super Admin site.
- Run SW tests (A), (B), and (C) on one sub-site.
- Selecting “Disconnect Clef account”
- returns success notification
- loads SW automatically
- Selecting “Get Started” loads “Connect your Clef account” screen
- Text the download link to your phone.
- CB loads Clef Wave and syncs WP user account.
- Completing the SW sends you to the Dashboard.
WP-Login.php Legend
- CA: Clef App
- CB: Clef button (i.e., “Log in w/ your phone”)
- LE: "Lost your password?" e-mail
- LF: "Lost your password?" form (i.e., wp-login.php?action=lostpassword)
- LL: "Lost your password?" link
- PF: Password form (i.e., the ordinary user/pass form displayed at wp-login.php)
Settings Page Legend
- P1: Disable passwords for Clef users
- P2: Disable passwords for all users with roles greater than or equal to
- P3: Disable passwords for all users and hide the password login form
- P4: Allow passwords for API
- O1: Override key
- O2: Generate secure override url link
- O3: Override url button
- O4: Override preview
- SS: "Setting saved" AJAX notification (appears then fades).
- XT: XML-RPC Test. Run this from command line (HT: Jesse):
curl --data '<?xml version="1.0"?><methodCall><methodName>wp.getOptions</methodName><params><param><value><i4>1</i4></value></param><param><value><string>USERNAME</string></value></param><param><value><string>PASSWORD</string></value></param></params></methodCall>' http://YOURWORDPRESSITE/xmlrpc.php
Start the following tests from fresh install state (i.e., all settings except API keys should be null, false, or “disabled”).
- SS fades.
- P4 appears.
- Override settings section appears.
- O1 = null.
- O4 = hidden.
- selecting 02
- shows SS,
- inserts key in O1,
- and shows O4.
- Non-Clef user login
- wp-login.php displays PF + CB with LL.
- Log in via PF.
- Non-Clef user reset password
- LF sends password reset e-mail.
- Set new password.
- Clef user login
- wp-login.php displays PF + CB with LL.
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Clef user reset password via LF
- Disabled. Returns “password resets have been disabled....”
- XML-RPC login
- Disabled. XT returns “passwords have been disabled....”
- wp-login.php displays PF + CB with LL.
- SS fades.
- P4 appears.
- Override settings section appears.
- O1 = null.
- O4 = hidden.
- selecting 02
- shows SS,
- inserts key in O1,
- and shows O4.
- Subscriber role login
- Log in via PF.
- Subscriber role reset password
- LF sends password reset e-mail.
- Set new password.
- Contributor role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Contributor role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- Author role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Author role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- Editor role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Editor role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Administrator role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- Super Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Super Administrator role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- XML-RPC login
- Disabled. XT returns “passwords have been disabled....”
- Subscriber role login
- Log in via PF.
- Subscriber role reset password
- LF sends password reset e-mail.
- Set new password.
- Contributor role login
- Log in via PF.
- Contributor role reset password
- LF sends password reset e-mail.
- Set new password.
- Author role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Author role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- Editor role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Editor role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Administrator role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- Super Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Super Administrator role reset password via LF
- Disabled. Returns “password resets have been disabled....”
- XML-RPC login
- Disabled. XT returns “passwords have been disabled....”
- Subscriber role login
- Log in via PF.
- Subscriber role reset password
- LF sends password reset e-mail.
- Set new password.
- Contributor role login
- Log in via PF.
- Contributor role reset password
- LF sends password reset e-mail.
- Set new password.
- Author role login
- Log in via PF.
- Author role reset password
- LF sends password reset e-mail.
- Set new password.
- Editor role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Editor role reset password via LF
- Disabled. Returns error notification.
- Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Administrator role reset password via LF
- Disabled. Returns error notification.
- Super Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Super Administrator role reset password via LF
- Disabled. Returns error notification.
- XML-RPC login
- Disabled. XT returns “passwords have been disabled....”
- Subscriber role login
- Log in via PF.
- Subscriber role reset password
- LF sends password reset e-mail.
- Set new password.
- Contributor role login
- Log in via PF.
- Contributor role reset password
- LF sends password reset e-mail.
- Set new password.
- Author role login
- Log in via PF.
- Author role reset password
- LF sends password reset e-mail.
- Set new password.
- Editor role login
- Log in via PF.
- Editor role reset password
- LF sends password reset e-mail.
- Set new password.
- Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Administrator role reset password via LF
- Disabled. Returns error notification.
- Super Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Super Administrator role reset password via LF
- Disabled. Returns error notification.
- XML-RPC login
- Disabled. XT returns “passwords have been disabled....”
- Subscriber role login
- Log in via PF.
- Subscriber role reset password
- LF sends password reset e-mail.
- Set new password.
- Contributor role login
- Log in via PF.
- Contributor role reset password
- LF sends password reset e-mail.
- Set new password.
- Author role login
- Log in via PF.
- Author role reset password
- LF sends password reset e-mail.
- Set new password.
- Editor role login
- Log in via PF.
- Editor role reset password
- LF sends password reset e-mail.
- Set new password.
- Administrator role login
- Log in via PF.
- Administrator role reset password
- LF sends password reset e-mail.
- Set new password.
- Super Administrator role login
- Log in via PF returns “passwords have been disabled....”
- Log in via override.
- Log in via CB.
- Log out via CA.
- Super Administrator role reset password via LF
- Disabled. Returns error notification.
- XML-RPC login
- Disabled. XT returns “passwords have been disabled....”
-
SS fades.
-
P4 appears.
-
Override settings section appears.
-
O1 = null.
-
O4 = hidden.
-
selecting 02
-
shows SS,
-
inserts key in O1,
-
and shows O4.
-
wp-login.php displays CB only (no PF and no LL).
-
LF disabled for all users. Returns error notification.
-
Log in via override.
-
Log in via CB.
-
Log out via CA.
- SS fades.
- Log in via XML-RPC. XT returns success notification.
-
Set to “Badge”
-
flashes SS
-
and prints
img
and functioninga
in site footer. -
Set to “Link”
-
Flashes SS
-
Prints functioning
a
in site footer. -
Set to “Disabled”
-
Flashes SS
-
Removes
img
and/ora
from site footer.
- State 1a: after first login via CB.
- Selecting “Badge” prints
img
and functioninga
in site footer and saves the setting (verify on setting page).
- State 1b: after first login via CB.
- Selecting “Link” prints functioning
a
in site footer and saves the setting (verify on setting page).
- Successful run through in Chrome.
- Successful run through in FireFox.
- Successful run through in Safari.
- Successful run through in IE.
- Functioning in Chrome.
- Functioning in FireFox.
- Functioning in Safari.
- Functioning in IE.
- All new translatable text blocks placed in appropriate wrapper functions.
- One-click install & activate successful.
- To the precious few who make it this far: treat yo self to a 💥.