{
}
+static bool __is_state_changed(tts_state_e state, int wait_delay)
+{
+ int max_count = wait_delay * 10;
+ int count = 0;
+ while (max_count > count && state != g_current_state) {
+ ecore_main_loop_iterate();
+ usleep(100000);
+ count++;
+ }
+
+ if (state != g_current_state) {
+ return false;
+ }
+
+ return true;
+}
+
namespace {
class TTSTest : public testing::Test {
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_destroy(g_tts);
g_tts = NULL;
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_destroy(g_tts);
g_tts = NULL;
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_destroy(g_tts);
g_tts = NULL;
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_set_mode(g_tts, TTS_MODE_DEFAULT);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_get_mode(g_tts, &mode);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
tts_unprepare(g_tts);
}
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_prepare(g_tts);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_get_max_text_size(g_tts, &size);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_get_state(g_tts, &state);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_play(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PLAYING != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PLAYING, 5));
ret = tts_get_state(g_tts, &state);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_play(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PLAYING != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PLAYING, 5));
ret = tts_pause(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PAUSED!=g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PAUSED, 5));
ret = tts_get_state(g_tts, &state);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_add_text(g_tts, "1 2 3", g_language, g_voice_type, TTS_SPEED_AUTO, &utt_id);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_add_text(g_tts, g_text, g_language, g_voice_type, TTS_SPEED_AUTO, &utt_id);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_add_text(g_tts, "1 2 3", g_language, g_voice_type, speed, &utt_id);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_play(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PLAYING != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PLAYING, 5));
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
g_utterance_completed_cb = false;
ret = tts_play(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PLAYING != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PLAYING, 5));
while (true != g_utterance_completed_cb) {
ecore_main_loop_iterate();
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_play(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PLAYING != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PLAYING, 5));
ret = tts_pause(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PAUSED!=g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PAUSED, 5));
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_play(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PLAYING != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PLAYING, 5));
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
g_utterance_completed_cb = false;
ret = tts_play(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_PLAYING != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PLAYING, 5));
while (true != g_utterance_completed_cb) {
ecore_main_loop_iterate();
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
g_utterance_completed_cb = false;
ret = strncmp(text_repeat, "repeat success", strlen(text_repeat));
EXPECT_EQ(ret, 0);
- while (TTS_STATE_PLAYING != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_PLAYING, 5));
while (true != g_utterance_completed_cb) {
ecore_main_loop_iterate();
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_repeat(g_tts, &text_repeat, &utt_id);
EXPECT_EQ(ret, TTS_ERROR_OPERATION_FAILED);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_set_state_changed_cb(g_tts, __tts_state_changed_cb, NULL);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unset_state_changed_cb(g_tts);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_set_utterance_started_cb(g_tts, __tts_utterance_started_cb, NULL);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unset_utterance_started_cb(g_tts);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_set_utterance_completed_cb(g_tts, __tts_utterance_completed_cb, NULL);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unset_utterance_completed_cb(g_tts);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_set_error_cb(g_tts, __tts_error_cb, NULL);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unset_error_cb(g_tts);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_set_default_voice_changed_cb(g_tts, __tts_default_voice_changed_cb, NULL);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unset_default_voice_changed_cb(g_tts);
ASSERT_NE(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
char *data = NULL;
ret = tts_get_private_data(g_tts, "version", &data);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_set_private_data(g_tts, "version", "2.0");
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_prepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_add_text(g_tts, "1 2 3", g_language, g_voice_type, TTS_SPEED_AUTO, &utt_id);
EXPECT_EQ(ret, TTS_ERROR_NONE);
ret = tts_stop(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);
- while (TTS_STATE_READY != g_current_state) {
- ecore_main_loop_iterate();
- }
+ EXPECT_EQ(true, __is_state_changed(TTS_STATE_READY, 5));
ret = tts_unprepare(g_tts);
EXPECT_EQ(ret, TTS_ERROR_NONE);