blob: d827ab38b929ecc277ba6bfcc687ef5ccc8bdc08 [file] [log] [blame]
library CssTest;
import '../../pkg/unittest/lib/unittest.dart';
import '../../pkg/unittest/lib/html_config.dart';
import 'dart:html';
main() {
useHtmlConfiguration();
test('CssMatrix', () {
CssMatrix matrix1 = new CssMatrix();
expect(matrix1.m11.round(), equals(1));
expect(matrix1.m12.round(), isZero);
CssMatrix matrix2 = new CssMatrix('matrix(1, 0, 0, 1, -835, 0)');
expect(matrix2.a.round(), equals(1));
expect(matrix2.e.round(), equals(-835));
});
test('Point', () {
Element element = new Element.tag('div');
element.attributes['style'] =
'''
position: absolute;
width: 60px;
height: 100px;
left: 0px;
top: 0px;
background-color: red;
-webkit-transform: translate3d(250px, 100px, 0px) perspective(500px) rotateX(30deg);
''';
document.body.nodes.add(element);
Point point = new Point(5, 2);
checkPoint(5, 2, point);
checkPoint(256, 110, window.webkitConvertPointFromNodeToPage(element, point));
point.y = 100;
checkPoint(5, 100, point);
checkPoint(254, 196, window.webkitConvertPointFromNodeToPage(element, point));
});
}
void checkPoint(expectedX, expectedY, Point point) {
expect(point.x.round(), equals(expectedX), reason: 'Wrong point.x');
expect(point.y.round(), equals(expectedY), reason: 'Wrong point.y');
}