Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Unified Diff: third_party/WebKit/LayoutTests/typedcssom/skewTransformComponent.html

Issue 1648853002: Typed CSS OM: implement TransformComponent::asMatrix (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@asMatrixTransformMethod
Patch Set: Use TransformationMatrix::create Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/typedcssom/skewTransformComponent.html
diff --git a/third_party/WebKit/LayoutTests/typedcssom/skewTransformComponent.html b/third_party/WebKit/LayoutTests/typedcssom/skewTransformComponent.html
index 4e53bcf3dbc8aad06217e765c56774fd0791088b..800b65e49493d39b8b21d1577a395c8115e65f7e 100644
--- a/third_party/WebKit/LayoutTests/typedcssom/skewTransformComponent.html
+++ b/third_party/WebKit/LayoutTests/typedcssom/skewTransformComponent.html
@@ -3,6 +3,7 @@
<script src="../resources/testharnessreport.js"></script>
<script>
+var EPSILON = 1e-6; // float epsilon
var values = [
{input: new Skew(0, 0), ax: 0, ay: 0, cssString: "skew(0, 0)"},
{input: new Skew(1, 2), ax: 1, ay: 2, cssString: "skew(1, 2)"},
@@ -34,4 +35,27 @@ test(function() {
assert_throws(null, function() { new Skew(1); });
}, "Test that invalid number of arguments for Skew throws an exception.");
+function tanDegrees(degrees) {
+ var radians = degrees * Math.PI / 180;
+ return Math.tan(radians);
+}
+
+test(function() {
+ for (var i = 0; i < values.length; ++i) {
+ var input = values[i].input;
+ var inputAsMatrix = input.asMatrix();
+ assert_true(inputAsMatrix.is2DComponent());
+ var tanAx = tanDegrees(input.ax);
+ var tanAy = tanDegrees(input.ay);
+ var expectedMatrix = new Matrix(1, tanAy, tanAx, 1, 0, 0);
+ for (var attribute in expectedMatrix) {
+ if (typeof expectedMatrix[attribute] === "number") {
+ assert_approx_equals(inputAsMatrix[attribute], expectedMatrix[attribute], EPSILON);
+ } else {
+ assert_equals(inputAsMatrix[attribute], expectedMatrix[attribute]);
+ }
+ }
+ }
+}, "Test that asMatrix is constructed correctly for Skew.");
+
</script>

Powered by Google App Engine
This is Rietveld 408576698