Signed-off-by: James Almer <[email protected]>
---
libavutil/tests/opt.c | 11 +++++++++--
tests/ref/fate/opt | 35 ++++++++++++++++++++++++++++++-----
2 files changed, 39 insertions(+), 7 deletions(-)
diff --git a/libavutil/tests/opt.c b/libavutil/tests/opt.c
index e2582cc93d..a914d0359a 100644
--- a/libavutil/tests/opt.c
+++ b/libavutil/tests/opt.c
@@ -66,7 +66,7 @@ typedef struct TestContext {
#define TEST_FLAG_MU 04
static const AVOption test_options[]= {
- {"num", "set num", OFFSET(num),
AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 100, 1
},
+ {"num", "set num", OFFSET(num),
AV_OPT_TYPE_INT, { .i64 = 0 }, -1, 100, 1
},
{"toggle", "set toggle", OFFSET(toggle),
AV_OPT_TYPE_INT, { .i64 = 1 }, 0, 1, 1
},
{"rational", "set rational", OFFSET(rational),
AV_OPT_TYPE_RATIONAL, { .dbl = 1 }, 0, 10, 1
},
{"string", "set string", OFFSET(string),
AV_OPT_TYPE_STRING, { .str = "default" }, CHAR_MIN, CHAR_MAX, 1
},
@@ -85,7 +85,7 @@ static const AVOption test_options[]= {
{"bin", "set binary value", OFFSET(binary),
AV_OPT_TYPE_BINARY, { .str="62696e00" }, 0, 0, 1
},
{"bin1", "set binary value", OFFSET(binary1),
AV_OPT_TYPE_BINARY, { .str=NULL }, 0, 0, 1
},
{"bin2", "set binary value", OFFSET(binary2),
AV_OPT_TYPE_BINARY, { .str="" }, 0, 0, 1
},
- {"num64", "set num 64bit", OFFSET(num64),
AV_OPT_TYPE_INT64, { .i64 = 1 }, 0, 100, 1
},
+ {"num64", "set num 64bit", OFFSET(num64),
AV_OPT_TYPE_INT64, { .i64 = 1 }, -1, 100, 1
},
{"flt", "set float", OFFSET(flt),
AV_OPT_TYPE_FLOAT, { .dbl = 1.0 / 3 }, 0, 100, 1
},
{"dbl", "set double", OFFSET(dbl),
AV_OPT_TYPE_DOUBLE, { .dbl = 1.0 / 3 }, 0, 100, 1
},
{"bool1", "set boolean value", OFFSET(bool1),
AV_OPT_TYPE_BOOL, { .i64 = -1 }, -1, 1, 1
},
@@ -285,10 +285,17 @@ int main(void)
"bin=boguss",
"bin=111",
"bin=ffff",
+ "num=bogus",
+ "num=44",
+ "num=44.4",
+ "num=-1",
+ "num=-2",
+ "num=101",
"num64=bogus",
"num64=44",
"num64=44.4",
"num64=-1",
+ "num64=-2",
"num64=101",
"flt=bogus",
"flt=2",
diff --git a/tests/ref/fate/opt b/tests/ref/fate/opt
index 832f9cc8a9..2da155aa2b 100644
--- a/tests/ref/fate/opt
+++ b/tests/ref/fate/opt
@@ -18,7 +18,7 @@ num64=1
flt=0.333333
dbl=0.333333
TestContext AVOptions:
- -num <int> E.......... set num (from 0 to 100) (default
0)
+ -num <int> E.......... set num (from -1 to 100)
(default 0)
-toggle <int> E.......... set toggle (from 0 to 1)
(default 1)
-rational <rational> E.......... set rational (from 0 to 10)
(default 1/1)
-string <string> E.......... set string (default "default")
@@ -37,7 +37,7 @@ TestContext AVOptions:
-bin <binary> E.......... set binary value
-bin1 <binary> E.......... set binary value
-bin2 <binary> E.......... set binary value
- -num64 <int64> E.......... set num 64bit (from 0 to 100)
(default 1)
+ -num64 <int64> E.......... set num 64bit (from -1 to 100)
(default 1)
-flt <float> E.......... set float (from 0 to 100)
(default 0.333333)
-dbl <double> E.......... set double (from 0 to 100)
(default 0.333333)
-bool1 <boolean> E.......... set boolean value (default auto)
@@ -312,6 +312,28 @@ Error 'bin=111'
Setting options string 'bin=ffff'
Setting entry with key 'bin' to value 'ffff'
OK 'bin=ffff'
+Setting options string 'num=bogus'
+Setting entry with key 'num' to value 'bogus'
+Undefined constant or missing '(' in 'bogus'
+Unable to parse option value "bogus"
+Error 'num=bogus'
+Setting options string 'num=44'
+Setting entry with key 'num' to value '44'
+OK 'num=44'
+Setting options string 'num=44.4'
+Setting entry with key 'num' to value '44.4'
+OK 'num=44.4'
+Setting options string 'num=-1'
+Setting entry with key 'num' to value '-1'
+OK 'num=-1'
+Setting options string 'num=-2'
+Setting entry with key 'num' to value '-2'
+Value -2.000000 for parameter 'num' out of range [-1 - 100]
+Error 'num=-2'
+Setting options string 'num=101'
+Setting entry with key 'num' to value '101'
+Value 101.000000 for parameter 'num' out of range [-1 - 100]
+Error 'num=101'
Setting options string 'num64=bogus'
Setting entry with key 'num64' to value 'bogus'
Undefined constant or missing '(' in 'bogus'
@@ -325,11 +347,14 @@ Setting entry with key 'num64' to value '44.4'
OK 'num64=44.4'
Setting options string 'num64=-1'
Setting entry with key 'num64' to value '-1'
-Value -1.000000 for parameter 'num64' out of range [0 - 100]
-Error 'num64=-1'
+OK 'num64=-1'
+Setting options string 'num64=-2'
+Setting entry with key 'num64' to value '-2'
+Value -2.000000 for parameter 'num64' out of range [-1 - 100]
+Error 'num64=-2'
Setting options string 'num64=101'
Setting entry with key 'num64' to value '101'
-Value 101.000000 for parameter 'num64' out of range [0 - 100]
+Value 101.000000 for parameter 'num64' out of range [-1 - 100]
Error 'num64=101'
Setting options string 'flt=bogus'
Setting entry with key 'flt' to value 'bogus'
--
2.43.2
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".