Skip to content

Commit 9ecfdc9

Browse files
aditimadan-Cloudinarynitzanj
authored andcommitted
Add duration to conditions in video (#172)
1 parent 39c3401 commit 9ecfdc9

File tree

3 files changed

+22
-1
lines changed

3 files changed

+22
-1
lines changed

cloudinary-core/src/main/java/com/cloudinary/transformation/BaseExpression.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,10 @@ public abstract class BaseExpression<T extends BaseExpression> {
4545
"currentPage", "cp",
4646
"tags", "tags",
4747
"pageX", "px",
48-
"pageY", "py"
48+
"pageY", "py",
49+
"duration","du",
50+
"initial_duration","idu",
51+
"initialDuration","idu"
4952

5053
);
5154
private static final Pattern PATTERN = getPattern();

cloudinary-core/src/main/java/com/cloudinary/transformation/Condition.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,13 @@ public Condition height(String operator, Object value) {
5858
public Condition aspectRatio(String operator, Object value) {
5959
return predicate("ar", operator, value);
6060
}
61+
public Condition duration(String operator, Object value) {
62+
return predicate("du", operator, value);
63+
}
64+
public Condition initialDuration(String operator, Object value) {
65+
return predicate("idu", operator, value);
66+
}
67+
6168

6269
/**
6370
* @deprecated Use {@link #faceCount(String, Object)} instead

cloudinary-core/src/test/java/com/cloudinary/TransformationTest.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,17 @@ public void ifElse() throws Exception {
8888
assertEquals("if_else should be without any transformation parameters", "if_w_lt_200/c_fill,h_120,w_80/if_else/c_fill,h_90,w_100", transformation.toString());
8989
}
9090

91+
@Test
92+
public void testDuration() throws Exception {
93+
Transformation transformation = new Transformation().ifCondition().duration("gt", "30").then().width(100).crop("scale");
94+
assertEquals("passing an operator and a value adds a condition", "if_du_gt_30,c_scale,w_100", transformation.toString());
95+
transformation = new Transformation().ifCondition().initialDuration("gt", "30").then().width(100).crop("scale");
96+
assertEquals("passing an operator and a value adds a condition", "if_idu_gt_30,c_scale,w_100", transformation.toString());
97+
transformation=new Transformation().ifCondition("initialDuration > 20").crop("scale").width(200);
98+
assertEquals("if_idu_gt_20,c_scale,w_200", transformation.generate());
99+
}
100+
101+
91102
@Test
92103
public void chainedConditions() throws Exception {
93104
Transformation transformation = new Transformation().ifCondition().aspectRatio("gt", "3:4").then().width(100).crop("scale");

0 commit comments

Comments
 (0)