This branch contains quite a few important changes, which you may or
may not like. Please review it carefully and point out everything you
consider that needs changing with in-line comment in the commits, or in
the same pull request.
These are the very first modifications I've noticed that need to be done
in order to get a complete test suite, which will have:
1) Basic unit tests: that will test code that doesn't require any external
communication.
2) Network-dependant unit tests: which will run some code that requires
communcation with Mega. These unit tests will dispose of a mocking
mechanism. In order to achieve this, we'll need to specify a very thin
set of wrapper functions that communicate with Mega APIs. (maybe
the currently implemented mega.py should suffice? I'm still looking
into this), and then mock these wrappers.
3) Integration tests: that will only test the Mega's API wrappers. This
will eventually need network connection and will probably be broken if
changes arise in Mega's API. Therefore, this set of tests will be
optional when running the whole test suite.
I know that I've made some huge changes, so please feel free to ask me
to stick to some rules if you have any, or personal preferences if you don't
like any these.
This branch contains quite a few important changes, which you may or may not like. Please review it carefully and point out everything you consider that needs changing with in-line comment in the commits, or in the same pull request.
These are the very first modifications I've noticed that need to be done in order to get a complete test suite, which will have: 1) Basic unit tests: that will test code that doesn't require any external communication. 2) Network-dependant unit tests: which will run some code that requires communcation with Mega. These unit tests will dispose of a mocking mechanism. In order to achieve this, we'll need to specify a very thin set of wrapper functions that communicate with Mega APIs. (maybe the currently implemented
mega.py
should suffice? I'm still looking into this), and then mock these wrappers. 3) Integration tests: that will only test the Mega's API wrappers. This will eventually need network connection and will probably be broken if changes arise in Mega's API. Therefore, this set of tests will be optional when running the whole test suite.I know that I've made some huge changes, so please feel free to ask me to stick to some rules if you have any, or personal preferences if you don't like any these.