| <!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-serialize"> |
| <link rel="author" title="Apple Inc"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="../support/serialize-testcommon.js"></script> |
| <div id=target></div> |
| <script> |
| function test_serialization(t,s,c) { |
| test_specified_serialization('opacity', t, s); |
| test_specified_serialization('transform', `scale(${t})`, `scale(calc(${c}))`); |
| test_computed_serialization('opacity', t, c); |
| test_computed_serialization('transform', `scale(${t})`, `matrix(${c}, 0, 0, ${c}, 0, 0)`); |
| } |
| |
| test_serialization( |
| 'cos(0)', |
| 'calc(1)', |
| '1'); |
| test_serialization( |
| 'sin(0)', |
| 'calc(0)', |
| '0'); |
| test_serialization( |
| 'tan(0)', |
| 'calc(0)', |
| '0'); |
| |
| test_serialization( |
| 'calc(sin(0) + cos(0) + tan(0))', |
| 'calc(1)', |
| '1'); |
| |
| test_serialization( |
| 'calc(sin(0) + 0.5)', |
| 'calc(0.5)', |
| '0.5'); |
| test_serialization( |
| 'calc(cos(0) + 0.5)', |
| 'calc(1.5)', |
| '1.5'); |
| test_serialization( |
| 'calc(tan(0) + 0.5)', |
| 'calc(0.5)', |
| '0.5'); |
| |
| test_serialization( |
| 'calc(sin(infinity))', |
| 'calc(NaN)', |
| 'NaN'); |
| test_serialization( |
| 'calc(cos(infinity))', |
| 'calc(NaN)', |
| 'NaN'); |
| test_serialization( |
| 'calc(tan(infinity))', |
| 'calc(NaN)', |
| 'NaN'); |
| </script> |