Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: test/iron_list_mutations_test.dart

Issue 1418513006: update elements and fix some bugs (Closed) Base URL: git@github.com:dart-lang/polymer_elements.git@master
Patch Set: code review updates Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « test/iron_list_hidden_test.dart ('k') | test/iron_list_physical_count_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/iron_list_mutations_test.dart
diff --git a/test/iron_list_mutations_test.dart b/test/iron_list_mutations_test.dart
index 9e74dd10b568a90afcc0d8912e4c1a9efd007cc7..b749c333f67c4c6b6eb748bb23190dcfc46dfb18 100644
--- a/test/iron_list_mutations_test.dart
+++ b/test/iron_list_mutations_test.dart
@@ -6,6 +6,7 @@ library polymer_elements.test.iron_list_mutations_test;
import 'dart:async';
import 'dart:js';
+import 'dart:math';
import 'package:polymer_elements/iron_list.dart';
import 'package:polymer/polymer.dart';
import 'package:test/test.dart';
@@ -14,6 +15,8 @@ import 'common.dart';
import 'iron_list_test_helpers.dart';
import 'fixtures/x_list.dart';
+var rand = new Random();
+
main() async {
await initPolymer();
@@ -30,9 +33,7 @@ main() async {
var setSize = 100;
var phrase = 'It works!';
list.items = buildDataSet(setSize);
- // TODO(jakemac): Update once we resolve
- // https://github.com/dart-lang/polymer_interop/issues/6
- list.jsElement.callMethod('set', ['items.0.index', phrase]);
+ list.set('items.0.index', phrase);
return new Future(() {}).then((_) {
expect(getFirstItemFromList(list).text, phrase);
});
@@ -56,14 +57,10 @@ main() async {
new Future(() {}).then((_) {
var rowHeight = list.jsElement['_physicalItems'][0].offsetHeight;
// scroll down
- simulateScroll({
- 'list': list,
- 'contribution': 100,
- 'target': setSize * rowHeight
- }, ([_]) {
- // TODO(jakemac): Update once we resolve
- // https://github.com/dart-lang/polymer_interop/issues/6
- list.jsElement.callMethod('set', ['items.0.index', phrase]);
+ simulateScroll(
+ {'list': list, 'contribution': 100, 'target': setSize * rowHeight},
+ ([_]) {
+ list.set('items.0.index', phrase);
new Future(() {}).then(scrollBackUp);
});
});
@@ -76,9 +73,7 @@ main() async {
var setSize = 100;
list.items = buildDataSet(setSize);
setSize = list.items.length;
- // TODO(jakemac): Update once we resolve
- // https://github.com/dart-lang/polymer_interop/issues/6
- list.jsElement.callMethod('push', ['items', buildItem(setSize)]);
+ list.add('items', buildItem(setSize));
expect(list.items.length, setSize + 1);
new Future(() {}).then((_) {
var rowHeight = list.jsElement['_physicalItems'][0].offsetHeight;
@@ -113,7 +108,7 @@ main() async {
var itemsPerViewport = (viewportHeight / rowHeight).floor();
// TODO(jakemac): Update once we resolve
// https://github.com/dart-lang/polymer_interop/issues/6
- list.jsElement.callMethod('pop', ['items']);
+ list.removeLast('items');
new Future(() {}).then((_) {
expect(list.items.length, setSize - 1);
expect(getFirstItemFromList(list).text, '${setSize - 3 - 1}');
@@ -128,14 +123,27 @@ main() async {
var setSize = 45;
var phrase = 'It works!';
list.items = buildDataSet(setSize);
- // TODO(jakemac): Update once we resolve
- // https://github.com/dart-lang/polymer_interop/issues/6
- list.jsElement.callMethod(
- 'splice', ['items', 0, setSize, buildItem(phrase)]);
+ list.removeRange('items', 0, setSize);
+ list.add('items', buildItem(phrase));
return new Future(() {}).then((_) {
expect(list.items.length, 1);
expect(getFirstItemFromList(list).text, phrase);
});
});
+
+ test('delete item and scroll to bottom', () {
+ var setSize = 100, index;
+
+ list.items = buildDataSet(setSize);
+
+ while (list.items.length > 10) {
+ index = (list.items.length * rand.nextDouble()).floor();
+ list.removeItem('items', list.items[index]);
+ list.scrollToIndex(list.items.length - 1);
+ expect(
+ new RegExp(r'^[0-9]*$').hasMatch(getFirstItemFromList(list).text),
+ isTrue);
+ }
+ });
});
}
« no previous file with comments | « test/iron_list_hidden_test.dart ('k') | test/iron_list_physical_count_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698