Index: client/tests/client/html/MeasurementTests.dart |
diff --git a/client/tests/client/html/MeasurementTests.dart b/client/tests/client/html/MeasurementTests.dart |
index 453d9fea4e31ac215470698e2d6df09db8119e32..5b0864af1deaf8fd574af3f7cca073d8f84b5ad2 100644 |
--- a/client/tests/client/html/MeasurementTests.dart |
+++ b/client/tests/client/html/MeasurementTests.dart |
@@ -1,4 +1,4 @@ |
-// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
+// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
// for details. All rights reserved. Use of this source code is governed by a |
// BSD-style license that can be found in the LICENSE file. |
@@ -8,25 +8,35 @@ void testMeasurement() { |
bool timeout0 = false; |
bool fnComplete = false; |
bool animationFrame = false; |
- bool callbackComplete = false; |
window.setTimeout(() { timeout0 = true; }, 0); |
- window.requestMeasurementFrame(() { |
- callbackComplete = true; |
- final style = element.computedStyle; |
+ final computedStyle = element.computedStyle; |
+ computedStyle.then((style) { |
Expect.equals(style.getPropertyValue('left'), 'auto'); |
Expect.isTrue(fnComplete); |
Expect.isFalse(timeout0); |
Expect.isFalse(animationFrame); |
- return callbackDone; |
+ callbackDone(); |
}); |
- Expect.isFalse(callbackComplete); |
+ Expect.isFalse(computedStyle.isComplete); |
fnComplete = true; |
}); |
+ asyncTest('requestLayoutFrame', 1, () { |
+ var rect; |
+ var computedStyle; |
+ window.requestLayoutFrame(() { |
+ Expect.isTrue(rect.isComplete); |
+ Expect.isTrue(computedStyle.isComplete); |
+ callbackDone(); |
+ }); |
+ |
+ final element = document.body; |
+ rect = element.rect; |
+ computedStyle = element.computedStyle; |
+ Expect.isFalse(rect.isComplete); |
+ Expect.isFalse(computedStyle.isComplete); |
+ }); |
+ |
// TODO(jacobr): add more tests that the results return by measurement |
// functions are correct. |
- |
- // TODO(jacobr): add tests that the dom cannot be manipulated while layout |
- // is in progress and measurement cannot be performed unless |
- // requestMeasurementFrame is called. |
} |