32 lines
1.1 KiB
Java
32 lines
1.1 KiB
Java
package com.projectsacrifice.game;
|
|
|
|
import static org.junit.Assert.assertEquals;
|
|
import static org.junit.Assert.assertNotEquals;
|
|
|
|
import org.junit.Test;
|
|
|
|
public final class AudioCueSequencerTest {
|
|
@Test
|
|
public void multiVariantDeathVoicesNeverRepeatImmediately() {
|
|
AudioCueSequencer sequencer = new AudioCueSequencer(17L);
|
|
int previous = sequencer.nextVariant(AudioCue.DEATH_VOICE);
|
|
|
|
for (int i = 0; i < 30; i++) {
|
|
int next = sequencer.nextVariant(AudioCue.DEATH_VOICE);
|
|
assertNotEquals(previous, next);
|
|
previous = next;
|
|
}
|
|
}
|
|
|
|
@Test
|
|
public void singleVariantCuesRemainStableAndChannelsAreExplicit() {
|
|
AudioCueSequencer sequencer = new AudioCueSequencer(9L);
|
|
|
|
assertEquals(0, sequencer.nextVariant(AudioCue.UI_TAP));
|
|
assertEquals(0, sequencer.nextVariant(AudioCue.UI_TAP));
|
|
assertEquals(AudioCue.Channel.EFFECTS, AudioCue.JUMP.channel());
|
|
assertEquals(AudioCue.Channel.VOICE, AudioCue.DEATH_VOICE.channel());
|
|
assertEquals(AudioCue.Channel.MUSIC, AudioCue.MUSIC_PULSE.channel());
|
|
}
|
|
}
|