Added support for handling multiple playlists in the Mock TCP server.
Refactored SlideUpPanelTests to support the new playlist handler.
Some code cleanup and enhancements
- Removed throw exception declarations from methods that never throw the exception.
- Changed deleting the test database on the test device to delete all databases.
The former method of only deleting the test database resulted in many old databases
that were not removed when the test run crashed.
- Enhanced robustness of testing async code by explicitly waiting for a view
to reach a certain state.
* Removed redundant configureHostInfo
It was only used to set the Kodi backend version which is also
set using setKodiMajorVersion.
* Removed unused annotations and throwables
* Improved robustness of SlideUpPanelTests
Replaced explicit sleeps with the waitForView action.
Fixed issue in waitForView action as it required the UI
to be idle which is mostly not the case for the bottom
panel with the progress indicator.
* Improved robustness of eventserver
When eventserver handles a wrong payload this should not crash
but simply show a log message and let the actual test fail.
* Added two abstract methods setSharedPreferences and
configureHostInfo to allow test classes extending
AbstractTestClass to set preferences or change the host info.
* Implemented a mock event server to test event server commands
* Implemented a handler to handle JSON input events over HTTP
* Fixed issue with opening drawer and Espresso not waiting for
when drawer was actually opened.
* Implemented new handlers for MockTcpServer to test
media control functions.
* Decreased delay for sending reponses in MockTcpServer from
1 sec to 100 ms. This was needed to prevent race conditions with
the progress bar that increases automatically once per second.