|
1 | 1 | package org.freedesktop.gstreamer.controller;
|
2 | 2 |
|
| 3 | +import java.util.Arrays; |
3 | 4 | import java.util.Collections;
|
4 | 5 | import java.util.List;
|
5 | 6 | import java.util.stream.Collectors;
|
|
16 | 17 | import org.junit.Before;
|
17 | 18 | import org.junit.BeforeClass;
|
18 | 19 | import org.junit.Test;
|
| 20 | + |
19 | 21 | import static org.junit.Assert.*;
|
20 | 22 |
|
21 | 23 | /**
|
@@ -115,13 +117,25 @@ public void testLinearInterpolationAbsolute() {
|
115 | 117 | controller.setFromList(timedValues);
|
116 | 118 |
|
117 | 119 | Element volume = ElementFactory.make("volume", "volume");
|
118 |
| - volume.addControlBinding(DirectControlBinding.createAbsolute(volume, "volume", controller)); |
| 120 | + ControlBinding binding = DirectControlBinding.createAbsolute(volume, "volume", controller); |
| 121 | + |
| 122 | + assertEquals(2.5, |
| 123 | + (Double) binding.getValue(ClockTime.fromMillis(500)), |
| 124 | + 0.01); |
| 125 | + |
| 126 | + Object[] values = new Object[3]; |
| 127 | + binding.getValueArray(0, ClockTime.fromMillis(500), values); |
| 128 | + assertEquals(0, (Double) values[0], 0.01); |
| 129 | + assertEquals(2.5, (Double) values[1], 0.01); |
| 130 | + assertEquals(5, (Double) values[2], 0.01); |
| 131 | + |
| 132 | + volume.addControlBinding(binding); |
119 | 133 | volume.syncValues(0);
|
120 |
| - assertEquals(0, ((Double) volume.get("volume")).doubleValue(), 0.001); |
| 134 | + assertEquals(0, ((Double) volume.get("volume")), 0.001); |
121 | 135 | volume.syncValues(ClockTime.fromMillis(500));
|
122 |
| - assertEquals(2.5, ((Double) volume.get("volume")).doubleValue(), 0.001); |
| 136 | + assertEquals(2.5, ((Double) volume.get("volume")), 0.001); |
123 | 137 | volume.syncValues(ClockTime.fromSeconds(1));
|
124 |
| - assertEquals(5, ((Double) volume.get("volume")).doubleValue(), 0.001); |
| 138 | + assertEquals(5, ((Double) volume.get("volume")), 0.001); |
125 | 139 |
|
126 | 140 | }
|
127 | 141 |
|
|
0 commit comments