mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-11-03 22:26:48 +00:00
TextToSpeechTestCase.java: wait for the voices to be installed and available before running the tests.
This commit is contained in:
@@ -19,6 +19,9 @@ package com.reecedunn.espeak.test;
|
||||
import android.speech.tts.TextToSpeech;
|
||||
import android.speech.tts.TextToSpeech.OnInitListener;
|
||||
import android.test.AndroidTestCase;
|
||||
import android.util.Log;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.hamcrest.Matchers.*;
|
||||
@@ -44,7 +47,8 @@ public class TextToSpeechTestCase extends AndroidTestCase
|
||||
{
|
||||
try
|
||||
{
|
||||
// Wait until the text-to-speech engine is initialised:
|
||||
// Wait until the text-to-speech engine is initialised (max: 5 seconds):
|
||||
|
||||
mEngine = new TextToSpeech(getContext(), mInitCallback);
|
||||
for (int count = 0; !mInitialised && count < 20; ++count)
|
||||
{
|
||||
@@ -54,6 +58,19 @@ public class TextToSpeechTestCase extends AndroidTestCase
|
||||
assertThat(mInitialised, is(true));
|
||||
assertThat(mStatus, is(TextToSpeech.SUCCESS));
|
||||
assertThat(mEngine.getDefaultEngine(), is("com.reecedunn.espeak"));
|
||||
|
||||
// Ensure that the voice data is installed (max: 20 seconds):
|
||||
|
||||
Locale en = new Locale("en");
|
||||
int available = mEngine.isLanguageAvailable(en);
|
||||
for (int count = 0; available != TextToSpeech.LANG_COUNTRY_VAR_AVAILABLE && count < (4 * 20); ++count)
|
||||
{
|
||||
Thread.sleep(250);
|
||||
available = mEngine.isLanguageAvailable(en);
|
||||
Log.d("TextToSpeechTestCase", "setUp: available = " + available);
|
||||
}
|
||||
|
||||
assertThat(available, is(TextToSpeech.LANG_COUNTRY_VAR_AVAILABLE));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user