blob: 2d60c97d830c597b69cdb50c3bb4ff67006a46ed [file] [log] [blame]
// @dart = 2.9
library CssTest;
import 'dart:html';
import 'package:expect/minitest.dart';
main() {
group('supportsPointConversions', () {
test('supported', () {
expect(Window.supportsPointConversions, true);
});
});
group('functional', () {
test('DomPoint', () {
var expectation =
Window.supportsPointConversions ? returnsNormally : throws;
expect(() {
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);
-moz-transform: translate3d(250px, 100px, 0px);
''';
document.body.append(element);
var elemRect = element.getBoundingClientRect();
checkPoint(250, 100, new Point(elemRect.left, elemRect.top));
checkPoint(310, 200, new Point(elemRect.right, elemRect.bottom));
}, expectation);
});
});
}
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');
}