| OLD | NEW |
| (Empty) |
| 1 <!DOCTYPE html> | |
| 2 <script src='../resources/testharness.js'></script> | |
| 3 <script src='../resources/testharnessreport.js'></script> | |
| 4 | |
| 5 <script> | |
| 6 | |
| 7 EPSILON = 0.000001; | |
| 8 | |
| 9 test(function() { | |
| 10 assert_throws(new TypeError(), function() { new CSSAngleValue(100, null); }); | |
| 11 assert_throws(new TypeError(), function() { new CSSAngleValue(100, ''); }); | |
| 12 assert_throws(new TypeError(), function() { new CSSAngleValue(100, 'px'); }); | |
| 13 assert_throws(new TypeError(), function() { new CSSAngleValue(100, 'bananas');
}); | |
| 14 }, 'Invalid unit name throws an exception') | |
| 15 | |
| 16 test(function() { | |
| 17 var angleValue = new CSSAngleValue(100.1, 'deg'); | |
| 18 | |
| 19 assert_equals(angleValue.degrees, 100.1); | |
| 20 assert_approx_equals(angleValue.radians, 1.747075, EPSILON); | |
| 21 assert_approx_equals(angleValue.gradians, 111.222222, EPSILON); | |
| 22 assert_approx_equals(angleValue.turns, 0.278056, EPSILON); | |
| 23 }, 'Test degree conversions'); | |
| 24 | |
| 25 test(function() { | |
| 26 var angleValue = new CSSAngleValue(100, 'rad'); | |
| 27 | |
| 28 assert_equals(angleValue.radians, 100); | |
| 29 assert_approx_equals(angleValue.degrees, 5729.577951, EPSILON); | |
| 30 assert_approx_equals(angleValue.gradians, 6366.197724, EPSILON); | |
| 31 assert_approx_equals(angleValue.turns, 15.915494, EPSILON); | |
| 32 }, 'Test radian conversions'); | |
| 33 | |
| 34 test(function() { | |
| 35 var angleValue = new CSSAngleValue(100, 'grad'); | |
| 36 | |
| 37 assert_equals(angleValue.gradians, 100); | |
| 38 assert_equals(angleValue.degrees, 90); | |
| 39 assert_approx_equals(angleValue.radians, 1.570796, EPSILON); | |
| 40 assert_equals(angleValue.turns, 0.25); | |
| 41 }, 'Test gradian conversions'); | |
| 42 | |
| 43 test(function() { | |
| 44 var angleValue = new CSSAngleValue(100, 'turn'); | |
| 45 | |
| 46 assert_equals(angleValue.turns, 100); | |
| 47 assert_equals(angleValue.degrees, 36000); | |
| 48 assert_approx_equals(angleValue.radians, 628.31853, EPSILON); | |
| 49 assert_equals(angleValue.gradians, 40000); | |
| 50 }, 'Test turn conversions'); | |
| 51 | |
| 52 test(function() { | |
| 53 assert_equals((new CSSAngleValue(100, 'deg')).cssText, '100deg'); | |
| 54 assert_equals((new CSSAngleValue(200, 'rad')).cssText, '200rad'); | |
| 55 assert_equals((new CSSAngleValue(300, 'grad')).cssText, '300grad'); | |
| 56 assert_equals((new CSSAngleValue(400, 'turn')).cssText, '400turn'); | |
| 57 }, 'Test cssText'); | |
| 58 | |
| 59 </script> | |
| OLD | NEW |