15
15
*/
16
16
package com .vonage .client .video ;
17
17
18
- import com .vonage .client .TestUtils ;
18
+ import static com .vonage .client .TestUtils . testJsonableBaseObject ;
19
19
import com .vonage .client .VonageResponseParseException ;
20
20
import static org .junit .jupiter .api .Assertions .*;
21
21
import org .junit .jupiter .api .*;
@@ -38,7 +38,7 @@ public void testSerializeAllParams() {
38
38
.streamMode (StreamMode .AUTO ).layout (layout )
39
39
.multiArchiveTag (multiArchiveTag ).build ();
40
40
41
- TestUtils . testJsonableBaseObject (request );
41
+ testJsonableBaseObject (request );
42
42
String json = request .toJson ();
43
43
assertTrue (json .contains ("\" name\" :\" " +name +"\" " ));
44
44
assertTrue (json .contains ("\" multiArchiveTag\" :\" " +multiArchiveTag +"\" " ));
@@ -52,6 +52,30 @@ public void testSerializeAllParams() {
52
52
assertTrue (json .contains ("\" maxBitrate\" :" +maxBitrate ));
53
53
}
54
54
55
+ @ Test
56
+ public void testQuantizationParameter () {
57
+ String sessionId = "flR1ZSBPY3QgMjkgMTI6MTM6MjMgUERUIDIwMTN" ;
58
+ int qp = 19 ;
59
+ Archive request = Archive .builder (sessionId ).quantizationParameter (qp ).build ();
60
+ testJsonableBaseObject (request );
61
+ String json = request .toJson ();
62
+ assertTrue (json .contains ("\" sessionId\" :\" " +sessionId +"\" " ));
63
+ assertTrue (json .contains ("\" quantizationParameter\" :" +qp ));
64
+ assertThrows (IllegalStateException .class , () ->
65
+ Archive .builder (sessionId ).quantizationParameter (qp ).maxBitrate (213450 ).build ()
66
+ );
67
+ }
68
+
69
+ @ Test
70
+ public void testQuantizationParameterBounds () {
71
+ var builder = Archive .builder ("SESSION_ID" );
72
+ int min = 15 , max = 40 ;
73
+ assertThrows (IllegalArgumentException .class , () -> builder .quantizationParameter (min -1 ).build ());
74
+ assertEquals (min , builder .quantizationParameter (min ).build ().getQuantizationParameter ());
75
+ assertThrows (IllegalArgumentException .class , () -> builder .quantizationParameter (max +1 ).build ());
76
+ assertEquals (max , builder .quantizationParameter (max ).build ().getQuantizationParameter ());
77
+ }
78
+
55
79
@ Test
56
80
public void testSerializeCustomLayout () {
57
81
String style = "stream.instructor {position: absolute; width: 100%; height:50%;}" ;
@@ -62,7 +86,7 @@ public void testSerializeCustomLayout() {
62
86
.streamMode (StreamMode .MANUAL ).layout (layout )
63
87
.outputMode (OutputMode .COMPOSED ).build ();
64
88
65
- TestUtils . testJsonableBaseObject (request );
89
+ testJsonableBaseObject (request );
66
90
String json = request .toJson ();
67
91
assertTrue (json .contains ("\" outputMode\" :\" composed\" " ));
68
92
assertTrue (json .contains ("\" streamMode\" :\" manual\" " ));
@@ -130,5 +154,6 @@ public void testFromJsonEmpty() {
130
154
assertNull (archive .getDurationSeconds ());
131
155
assertNull (archive .getCreatedAt ());
132
156
assertNull (archive .getCreatedAtMillis ());
157
+ assertNull (archive .getQuantizationParameter ());
133
158
}
134
159
}
0 commit comments