23 lines
745 B
C++
23 lines
745 B
C++
#include "dialogue/DialogueVoice.h"
|
|
#include "zeroerr/assert.h"
|
|
#include "zeroerr/unittest.h"
|
|
|
|
using namespace eve::dialogue;
|
|
|
|
TEST_CASE("dialogueVoice.localizedDurationAndEnvelope") {
|
|
DialogueVoice* voice = DialogueVoice::create();
|
|
voice->clear();
|
|
voice->setEnvelopeRate(4.f);
|
|
CHECK(voice->registerClip("intro.1", "en", 1.f, "0,0.25,0.75,1"));
|
|
CHECK(voice->registerClip("intro.1", "", 0.5f, "0.1,0.2"));
|
|
CHECK(voice->play("intro.1", "en"));
|
|
voice->update(0.5f);
|
|
CHECK(voice->getAmplitude() == 0.75f);
|
|
CHECK(voice->isPlaying());
|
|
voice->update(0.5f);
|
|
CHECK(!voice->isPlaying());
|
|
CHECK(voice->shouldAutoAdvance());
|
|
CHECK(voice->play("intro.1", "zh"));
|
|
CHECK(voice->getDuration() == 0.5f);
|
|
}
|