Refactor and add tests for plugins.py

Improvement to the tests currently being run on ``plugins.py``

related #644 
I have moved the comments to the doc string.