Files
sdk/tests/lib_2/html/client_rect_test.dart
T
Terry Lucas 581c512345 Fixed DOMRectList not having a prototype field.
TBR=vsm@google.com

Change-Id: I6cbc38bbb2123b914d5b5511774425c403e614ed
Reviewed-on: https://dart-review.googlesource.com/47183
Reviewed-by: Terry Lucas <terry@google.com>
Commit-Queue: Terry Lucas <terry@google.com>
2018-03-20 01:08:47 +00:00

42 lines
1.2 KiB
Dart

import 'dart:html';
import 'package:expect/minitest.dart';
main() {
var isRectList =
predicate((x) => x is DomRectList, 'should be a DomRectList');
var isListOfRectangle =
predicate((x) => x is List<Rectangle>, 'should be a List<Rectangle>');
var isRectangle = predicate((x) => x is Rectangle, 'should be a Rectangle');
var isDomRectReadOnly =
predicate((x) => x is DomRectReadOnly, 'should be a DomRectReadOnly');
insertTestDiv() {
var element = new Element.tag('div');
element.innerHtml = r'''
A large block of text should go here. Click this
block of text multiple times to see each line
highlight with every click of the mouse button.
''';
document.body.append(element);
return element;
}
test("DomRectList test", () {
insertTestDiv();
var range = new Range();
var rects = range.getClientRects();
expect(rects, isListOfRectangle);
expect(rects, isRectList);
});
test("ClientRect ==", () {
var rect1 = document.body.getBoundingClientRect();
var rect2 = document.body.getBoundingClientRect();
expect(rect1, isRectangle);
expect(rect1, isDomRectReadOnly);
expect(rect1, equals(rect2));
});
}