1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00
FFmpeg/tests/ref/fate/eval
Michael Niedermayer b50bd69516 avutil/eval-test: Check av_expr_parse_and_eval() for failure and also check it in the fate test
Fixes CID1361940

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-05-20 19:32:02 +02:00

308 lines
5.9 KiB
Plaintext

Evaluating ''
'' -> nan
av_expr_parse_and_eval failed
Evaluating '1;2'
'1;2' -> 2.000000
Evaluating '-20'
'-20' -> -20.000000
Evaluating '-PI'
'-PI' -> -3.141593
Evaluating '+PI'
'+PI' -> 3.141593
Evaluating '1+(5-2)^(3-1)+1/2+sin(PI)-max(-2.2,-3.1)'
'1+(5-2)^(3-1)+1/2+sin(PI)-max(-2.2,-3.1)' -> 12.700000
Evaluating '80G/80Gi'
'80G/80Gi' -> 0.931323
Evaluating '1k'
'1k' -> 1000.000000
Evaluating '1Gi'
'1Gi' -> 1073741824.000000
Evaluating '1gi'
'1gi' -> nan
av_expr_parse_and_eval failed
Evaluating '1GiFoo'
'1GiFoo' -> nan
av_expr_parse_and_eval failed
Evaluating '1k+1k'
'1k+1k' -> 2000.000000
Evaluating '1Gi*3foo'
'1Gi*3foo' -> nan
av_expr_parse_and_eval failed
Evaluating 'foo'
'foo' -> nan
av_expr_parse_and_eval failed
Evaluating 'foo('
'foo(' -> nan
av_expr_parse_and_eval failed
Evaluating 'foo()'
'foo()' -> nan
av_expr_parse_and_eval failed
Evaluating 'foo)'
'foo)' -> nan
av_expr_parse_and_eval failed
Evaluating 'sin'
'sin' -> nan
av_expr_parse_and_eval failed
Evaluating 'sin('
'sin(' -> nan
av_expr_parse_and_eval failed
Evaluating 'sin()'
'sin()' -> nan
av_expr_parse_and_eval failed
Evaluating 'sin)'
'sin)' -> nan
av_expr_parse_and_eval failed
Evaluating 'sin 10'
'sin 10' -> nan
av_expr_parse_and_eval failed
Evaluating 'sin(1,2,3)'
'sin(1,2,3)' -> nan
av_expr_parse_and_eval failed
Evaluating 'sin(1 )'
'sin(1 )' -> 0.841471
Evaluating '1'
'1' -> 1.000000
Evaluating '1foo'
'1foo' -> nan
av_expr_parse_and_eval failed
Evaluating 'bar + PI + E + 100f*2 + foo'
'bar + PI + E + 100f*2 + foo' -> nan
av_expr_parse_and_eval failed
Evaluating '13k + 12f - foo(1, 2)'
'13k + 12f - foo(1, 2)' -> nan
av_expr_parse_and_eval failed
Evaluating '1gi'
'1gi' -> nan
av_expr_parse_and_eval failed
Evaluating '1Gi'
'1Gi' -> 1073741824.000000
Evaluating 'st(0, 123)'
'st(0, 123)' -> 123.000000
Evaluating 'st(1, 123); ld(1)'
'st(1, 123); ld(1)' -> 123.000000
Evaluating 'lte(0, 1)'
'lte(0, 1)' -> 1.000000
Evaluating 'lte(1, 1)'
'lte(1, 1)' -> 1.000000
Evaluating 'lte(1, 0)'
'lte(1, 0)' -> 0.000000
Evaluating 'lt(0, 1)'
'lt(0, 1)' -> 1.000000
Evaluating 'lt(1, 1)'
'lt(1, 1)' -> 0.000000
Evaluating 'gt(1, 0)'
'gt(1, 0)' -> 1.000000
Evaluating 'gt(2, 7)'
'gt(2, 7)' -> 0.000000
Evaluating 'gte(122, 122)'
'gte(122, 122)' -> 1.000000
Evaluating 'st(0, 1); while(lte(ld(0), 100), st(1, ld(1)+ld(0));st(0, ld(0)+1)); ld(1)'
'st(0, 1); while(lte(ld(0), 100), st(1, ld(1)+ld(0));st(0, ld(0)+1)); ld(1)' -> 5050.000000
Evaluating 'st(1, 1); st(2, 2); st(0, 1); while(lte(ld(0),10), st(3, ld(1)+ld(2)); st(1, ld(2)); st(2, ld(3)); st(0, ld(0)+1)); ld(3)'
'st(1, 1); st(2, 2); st(0, 1); while(lte(ld(0),10), st(3, ld(1)+ld(2)); st(1, ld(2)); st(2, ld(3)); st(0, ld(0)+1)); ld(3)' -> 233.000000
Evaluating 'while(0, 10)'
'while(0, 10)' -> nan
av_expr_parse_and_eval failed
Evaluating 'st(0, 1); while(lte(ld(0),100), st(1, ld(1)+ld(0)); st(0, ld(0)+1))'
'st(0, 1); while(lte(ld(0),100), st(1, ld(1)+ld(0)); st(0, ld(0)+1))' -> 101.000000
Evaluating 'isnan(1)'
'isnan(1)' -> 0.000000
Evaluating 'isnan(NAN)'
'isnan(NAN)' -> 1.000000
Evaluating 'isnan(INF)'
'isnan(INF)' -> 0.000000
Evaluating 'isinf(1)'
'isinf(1)' -> 0.000000
Evaluating 'isinf(NAN)'
'isinf(NAN)' -> 0.000000
Evaluating 'isinf(INF)'
'isinf(INF)' -> 1.000000
Evaluating 'floor(NAN)'
'floor(NAN)' -> nan
av_expr_parse_and_eval failed
Evaluating 'floor(123.123)'
'floor(123.123)' -> 123.000000
Evaluating 'floor(-123.123)'
'floor(-123.123)' -> -124.000000
Evaluating 'trunc(123.123)'
'trunc(123.123)' -> 123.000000
Evaluating 'trunc(-123.123)'
'trunc(-123.123)' -> -123.000000
Evaluating 'ceil(123.123)'
'ceil(123.123)' -> 124.000000
Evaluating 'ceil(-123.123)'
'ceil(-123.123)' -> -123.000000
Evaluating 'sqrt(1764)'
'sqrt(1764)' -> 42.000000
Evaluating 'isnan(sqrt(-1))'
'isnan(sqrt(-1))' -> 1.000000
Evaluating 'not(1)'
'not(1)' -> 0.000000
Evaluating 'not(NAN)'
'not(NAN)' -> 0.000000
Evaluating 'not(0)'
'not(0)' -> 1.000000
Evaluating '6.0206dB'
'6.0206dB' -> 2.000000
Evaluating '-3.0103dB'
'-3.0103dB' -> 0.707107
Evaluating 'pow(0,1.23)'
'pow(0,1.23)' -> 0.000000
Evaluating 'pow(PI,1.23)'
'pow(PI,1.23)' -> 4.087844
Evaluating 'PI^1.23'
'PI^1.23' -> 4.087844
Evaluating 'pow(-1,1.23)'
'pow(-1,1.23)' -> nan
av_expr_parse_and_eval failed
Evaluating 'if(1, 2)'
'if(1, 2)' -> 2.000000
Evaluating 'if(1, 1, 2)'
'if(1, 1, 2)' -> 1.000000
Evaluating 'if(0, 1, 2)'
'if(0, 1, 2)' -> 2.000000
Evaluating 'ifnot(0, 23)'
'ifnot(0, 23)' -> 23.000000
Evaluating 'ifnot(1, NaN) + if(0, 1)'
'ifnot(1, NaN) + if(0, 1)' -> 0.000000
Evaluating 'ifnot(1, 1, 2)'
'ifnot(1, 1, 2)' -> 2.000000
Evaluating 'ifnot(0, 1, 2)'
'ifnot(0, 1, 2)' -> 1.000000
Evaluating 'taylor(1, 1)'
'taylor(1, 1)' -> 2.718282
Evaluating 'taylor(eq(mod(ld(1),4),1)-eq(mod(ld(1),4),3), PI/2, 1)'
'taylor(eq(mod(ld(1),4),1)-eq(mod(ld(1),4),3), PI/2, 1)' -> 1.000000
Evaluating 'root(sin(ld(0))-1, 2)'
'root(sin(ld(0))-1, 2)' -> 1.570796
Evaluating 'root(sin(ld(0))+6+sin(ld(0)/12)-log(ld(0)), 100)'
'root(sin(ld(0))+6+sin(ld(0)/12)-log(ld(0)), 100)' -> 60.965601
Evaluating '7000000B*random(0)'
'7000000B*random(0)' -> 0.003078
Evaluating 'squish(2)'
'squish(2)' -> 0.000335
Evaluating 'gauss(0.1)'
'gauss(0.1)' -> 0.396953
Evaluating 'hypot(4,3)'
'hypot(4,3)' -> 5.000000
Evaluating 'gcd(30,55)*print(min(9,1))'
'gcd(30,55)*print(min(9,1))' -> 5.000000
Evaluating 'bitor(42, 12)'
'bitor(42, 12)' -> 46.000000
Evaluating 'bitand(42, 12)'
'bitand(42, 12)' -> 8.000000
Evaluating 'bitand(NAN, 1)'
'bitand(NAN, 1)' -> nan
av_expr_parse_and_eval failed
Evaluating 'between(10, -3, 10)'
'between(10, -3, 10)' -> 1.000000
Evaluating 'between(-4, -2, -1)'
'between(-4, -2, -1)' -> 0.000000
Evaluating 'between(1,2)'
'between(1,2)' -> nan
av_expr_parse_and_eval failed
Evaluating 'clip(0, 2, 1)'
'clip(0, 2, 1)' -> nan
av_expr_parse_and_eval failed
Evaluating 'clip(0/0, 1, 2)'
'clip(0/0, 1, 2)' -> nan
av_expr_parse_and_eval failed
Evaluating 'clip(0, 0/0, 1)'
'clip(0, 0/0, 1)' -> nan
av_expr_parse_and_eval failed
12.700000 == 12.7
0.931323 == 0.931322575