Add the method "invokeMethod" in the MailPoetTest class to be able to test private and protected methods
Move the "rowsCount" method in the Helpers class for reusability
Add the method "loadSQL" in the Helpers class
Store the mapping between MP2 user ID and MP3 subscriber ID
Several fixes following the code review:
- For styles we use Stylus. (http://stylus-lang.com/)
In Stylus styles curly brackets and terminating semicolons are unnecessary. Indentation is sufficient to denote blocks of styles
You can also use variables to avoid duplication (e.g. mentioning the same color multiple times)
Vendor prefixes are not necessary. We use the Nib mixin for Stylus to handle those (http://tj.github.io/nib/)
=> DONE
- `admin.js` bundle is included on all admin pages, so we need to ensure that migration fires only on the migration page and nowhere else.
You can even create a separate bundle only for migration files, as they won't be necessary on other admin pages.
=> DONE
- MP2MigratorAPI => MP2Migrator endpoint would be just as fine
=> DONE
- For storing migration files, you can use the `Env::$temp_path` path
=> DONE
- `proposeMigration()` the method name disagrees with the comment.
Comment suggests it tests if migration can be or should be performed
Method name suggests that it proposes doing the migration (to the user?) - not very clear
=> DONE: the new name is isMigrationNeeded()
And not only does it test, it may also update the `mailpoet_migration_complete` option, which is confusing and is an unexpected side-effect.
=> DONE
The migration class itself `MP2Migrator` shouldn't even care about _GET, _REQUEST or _POST arguments. It should only work with what is passed to it.
=> DONE
- In views, please make sure all human-friendly texts use WP's gettext functions for translations (e.g. __('text'))
=> DONE
time are not returned
Schedules welcome notifications only for subscribers with "subscribed"
status
Extracts confirmation email sending/welcome notification scheduling into
separate functions for easy testing
Codeception from version 2.3 up comes with PHPUnit v6 which changed
__construct behaviour. Our tests have to call parent __constructor in
order to work. The error was:
[PHPUnit\Framework\Exception] array_merge(): Argument #1 is not an array
My internet provider tried to be helpfull and offeres content on
invalid urls. That is only behaviour for http:// scheme and not
for https:// scheme so I need to enforce ssl so that invalid url
fails even in my house.