1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
<!DOCTYPE html>
<link rel="help" href="https://drafts.csswg.org/css-values-4/#comp-func">
<link rel="help" href="https://drafts.csswg.org/css-values-4/#numbers">
<link rel="help" href="https://drafts.csswg.org/css-values-4/#calc-type-checking">
<link rel="author" title="Apple Inc">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="../support/parsing-testcommon.js"></script>
<script>
function test_invalid_number(value) {
test_invalid_value('opacity', value);
}
function test_invalid_length(value) {
// 'letter-spacing' accepts <length> only, not <percentage> or any mixes.
test_invalid_value('letter-spacing', value);
}
// Syntax checking
test_invalid_number('hypot()');
test_invalid_number('hypot( )');
test_invalid_number('hypot(,)');
test_invalid_number('hypot(1, )');
test_invalid_number('hypot(, 1)');
test_invalid_number('hypot(1 + )');
test_invalid_number('hypot(1 - )');
test_invalid_number('hypot(1 * )');
test_invalid_number('hypot(1 / )');
test_invalid_number('hypot(1 2)');
test_invalid_number('hypot(1, , 2)');
test_invalid_number('sqrt()');
test_invalid_number('sqrt( )');
test_invalid_number('sqrt(,)');
test_invalid_number('sqrt(1, )');
test_invalid_number('sqrt(, 1)');
test_invalid_number('sqrt(1 + )');
test_invalid_number('sqrt(1 - )');
test_invalid_number('sqrt(1 * )');
test_invalid_number('sqrt(1 / )');
test_invalid_number('sqrt(1 2)');
test_invalid_number('sqrt(1, , 2)');
test_invalid_number('sqrt(1, 2)');
test_invalid_number('pow( )');
test_invalid_number('pow(,)');
test_invalid_number('pow(1, )');
test_invalid_number('pow(, 1)');
test_invalid_number('pow(1 + )');
test_invalid_number('pow(1 - )');
test_invalid_number('pow(1 * )');
test_invalid_number('pow(1 / )');
test_invalid_number('pow(1 2)');
test_invalid_number('pow(1, , 2)');
// General tests
test_invalid_length('calc(1px * pow(1))');
test_invalid_length('calc(1px * pow(2px, 3px))');
test_invalid_length('calc(sqrt(100px)');
test_invalid_length('hypot(2px, 40%)');
test_invalid_length('hypot(2px, 3)');
test_invalid_length('hypot(3, ,4)');
test_invalid_length('hypot(1, 2)');
test_invalid_length('calc(1px * pow(2 3))');
test_invalid_length('hypot()');
test_invalid_length('calc(pow(2))');
test_invalid_length('pow())');
test_invalid_length('pow(1, 2)');
test_invalid_length('calc(sqrt())');
test_invalid_length('calc(sqrt(100, 200))');
</script>
|