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 |