Skip to content

GSoC project: VLC on Android Testsuite

This issue plans to build test suites around LibVlc and UI views for VLC player.

So far, I've made a simple list for the components I felt are essential to test:

  • Preferences screen (UI) - Can use Robolectric for state testing on different configurations.
  • Playlist Items with MLPagedModel (UI/VM) - Can use Mockito for mocking MediaLibrary.
  • Search Activity (UI) - Can use Robolectric for state testing and Mockito for mocking MediaLibrary.
  • Streams Model with Medialibrary (VM) - Mocked the MediaLibrary and its native methods to test proper behaviour of StreamsModel

For instrumentation tests:

  • Audio/Video Playback Controls (UI) - Can use Expresso to test UI proper UI behaviour (with configuration changes) and mock for PlayerController to test with suitable states.
  • Playback Service - Can mock PlaylistManager to test appropriate behaviour on specific scenarios, such as when updating video aspect ratio.
  • libVlc: MediaPlayer - Test whether appropriate events are received through JNI.
  • libVlc: MediaDiscoverer - Test whether proper media are discovered by reading files from the assets folder of the androidTest directory.

Would like to tag @Dekans so he can review the project's requirements.

The proposal is attached here: GSoC_Proposal_-_VLC_on_Android_Testsuite.pdf

Thanks, shivanshs9

Edited by Shivansh Saini