blob: f4fa0b830240c5c0c089315ae8c690000450ac42 [file] [log] [blame]
#library('CSSTest');
#import('../../pkg/unittest/unittest.dart');
#import('../../pkg/unittest/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');
}