Add test case for removeWhere() functionality on ObservableList

diff --git a/test/observable_list_test.dart b/test/observable_list_test.dart
index 0a29fa3..ed87d04 100644
--- a/test/observable_list_test.dart
+++ b/test/observable_list_test.dart
@@ -65,6 +65,15 @@
       });
     });
 
+    test('removeWhere changes length', () {
+      list.add(2);
+      list.removeWhere((e) => e == 2);
+      expect(list, [1, 3]);
+      return new Future(() {
+        expectChanges(changes, [_lengthChange(3, 4), _lengthChange(4, 2)]);
+      });
+    });
+
     test('length= changes length', () {
       list.length = 5;
       expect(list, [1, 2, 3, null, null]);
@@ -266,6 +275,19 @@
       });
     });
 
+    test('removeWhere', () {
+      list.removeWhere((e) => e == 3);
+      expect(list, orderedEquals([1, 2, 1, 4]));
+
+      return new Future(() {
+        expectChanges(propRecords, [_lengthChange(6, 4)]);
+        expectChanges(listRecords, [
+          _change(2, removed: [3]),
+          _change(3, removed: [3])
+        ]);
+      });
+    });
+
     test('sort', () {
       list.sort((x, y) => x - y);
       expect(list, orderedEquals([1, 1, 2, 3, 3, 4]));