@Test
public void processVideo_WithAdvancedOptions_ServerCallAsExpectedAndDownloadIdReturned() {

    String ExpectedDownloadId = "download_id";
    String SoundedSpeed = "1";
    String SilentSpeed = "2";
    String SilenceThreshold = "3";
    String FrameMargin = "4";
    String FrameRate = "5";
    String FrameQuality = "6";
    String SampleRate = "7";
    MockInterceptor okHttpMockInterceptor = new MockInterceptor();
    okHttpMockInterceptor.addRule()
            .get()
            .url(new ProcessUrlBuilder()
                    .withHost("jumpcutter.letum.ch")
                    .withSoundedSpeed(SoundedSpeed)
                    .withSilentSpeed(SilentSpeed)
                    .withSilentThreshold(SilenceThreshold)
                    .withFrameMargin(FrameMargin)
                    .withFrameRate(FrameRate)
                    .withFrameQuality(FrameQuality)
                    .withSampleRate(SampleRate)
                    .build()
                    .toString())
            .respond(ExpectedDownloadId);
    OkHttpClient okHttpClient = new OkHttpClient.Builder()
            .addInterceptor(okHttpMockInterceptor)
            .build();
    SettingsProvider settingsProviderMock = Mockito.mock(SettingsProvider.class);
    when(settingsProviderMock.getSoundSpeed())
            .thenReturn(SoundedSpeed);
    when(settingsProviderMock.getSilenceSpeed())
            .thenReturn(SilentSpeed);
    when(settingsProviderMock.getSilenceThreshold())
            .thenReturn(SilenceThreshold);
    when(settingsProviderMock.getFrameMargin())
            .thenReturn(FrameMargin);
    when(settingsProviderMock.getFrameRate())
            .thenReturn(FrameRate);
    when(settingsProviderMock.getFrameQuality())
            .thenReturn(FrameQuality);
    when(settingsProviderMock.getSampleRate())
            .thenReturn(SampleRate);
    when(settingsProviderMock.getAdvancedOptionsSwitchEnabled())
            .thenReturn(true);
    ServerWrapper server = new ServerWrapper(okHttpClient, null);
    String downloadId = server.processVideo(null, settingsProviderMock);
    Assert.assertEquals(ExpectedDownloadId, downloadId);
}