4cc31f8f4f
There are no behavioral changes here, I just ran `dart format` on the `tests/lib/html/` directory. Change-Id: I221b2a370adc393e49621db1d37aa6eeb09b3015 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/425329 Reviewed-by: Srujan Gaddam <srujzs@google.com> Auto-Submit: Bob Nystrom <rnystrom@google.com> Commit-Queue: Bob Nystrom <rnystrom@google.com>
119 lines
3.4 KiB
Dart
119 lines
3.4 KiB
Dart
// Copyright (c) 2012, 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.
|
|
|
|
import 'dart:html';
|
|
|
|
import 'package:expect/legacy/minitest.dart'; // ignore: deprecated_member_use_from_same_package
|
|
|
|
main() {
|
|
setUp(() {
|
|
window.localStorage['key1'] = 'val1';
|
|
window.localStorage['key2'] = 'val2';
|
|
window.localStorage['key3'] = 'val3';
|
|
});
|
|
|
|
tearDown(() {
|
|
window.localStorage.clear();
|
|
});
|
|
|
|
test('containsValue', () {
|
|
expect(window.localStorage.containsValue('does not exist'), isFalse);
|
|
expect(window.localStorage.containsValue('key1'), isFalse);
|
|
expect(window.localStorage.containsValue('val1'), isTrue);
|
|
expect(window.localStorage.containsValue('val3'), isTrue);
|
|
});
|
|
|
|
test('containsKey', () {
|
|
expect(window.localStorage.containsKey('does not exist'), isFalse);
|
|
expect(window.localStorage.containsKey('val1'), isFalse);
|
|
expect(window.localStorage.containsKey('key1'), isTrue);
|
|
expect(window.localStorage.containsKey('key3'), isTrue);
|
|
});
|
|
|
|
test('[]', () {
|
|
expect(window.localStorage['does not exist'], isNull);
|
|
expect(window.localStorage['key1'], 'val1');
|
|
expect(window.localStorage['key3'], 'val3');
|
|
});
|
|
|
|
test('[]=', () {
|
|
expect(window.localStorage['key4'], isNull);
|
|
window.localStorage['key4'] = 'val4';
|
|
expect(window.localStorage['key4'], 'val4');
|
|
|
|
expect(window.localStorage['key3'], 'val3');
|
|
window.localStorage['key3'] = 'val3-new';
|
|
expect(window.localStorage['key3'], 'val3-new');
|
|
});
|
|
|
|
test('putIfAbsent', () {
|
|
expect(window.localStorage['key4'], isNull);
|
|
expect(window.localStorage.putIfAbsent('key4', () => 'val4'), 'val4');
|
|
expect(window.localStorage['key4'], 'val4');
|
|
|
|
expect(window.localStorage['key3'], 'val3');
|
|
expect(
|
|
window.localStorage.putIfAbsent('key3', () {
|
|
fail('should not be called');
|
|
return 'unused';
|
|
}),
|
|
'val3',
|
|
);
|
|
expect(window.localStorage['key3'], 'val3');
|
|
});
|
|
|
|
test('remove', () {
|
|
expect(window.localStorage.remove('does not exist'), isNull);
|
|
expect(window.localStorage.remove('key3'), 'val3');
|
|
expect(window.localStorage, equals({'key1': 'val1', 'key2': 'val2'}));
|
|
});
|
|
|
|
test('clear', () {
|
|
window.localStorage.clear();
|
|
expect(window.localStorage, equals({}));
|
|
});
|
|
|
|
test('forEach', () {
|
|
var results = <String, String>{};
|
|
window.localStorage.forEach((k, v) {
|
|
results[k] = v;
|
|
});
|
|
expect(results, equals({'key1': 'val1', 'key2': 'val2', 'key3': 'val3'}));
|
|
});
|
|
|
|
test('getKeys', () {
|
|
expect(
|
|
window.localStorage.keys.toList(),
|
|
unorderedEquals(['key1', 'key2', 'key3']),
|
|
);
|
|
});
|
|
|
|
test('getVals', () {
|
|
expect(
|
|
window.localStorage.values.toList(),
|
|
unorderedEquals(['val1', 'val2', 'val3']),
|
|
);
|
|
});
|
|
|
|
test('getEntries', () {
|
|
var results = <String, String>{};
|
|
window.localStorage.entries.forEach((e) {
|
|
results[e.key] = e.value;
|
|
});
|
|
expect(results, equals({'key1': 'val1', 'key2': 'val2', 'key3': 'val3'}));
|
|
});
|
|
|
|
test('length', () {
|
|
expect(window.localStorage.length, 3);
|
|
window.localStorage.clear();
|
|
expect(window.localStorage.length, 0);
|
|
});
|
|
|
|
test('isEmpty', () {
|
|
expect(window.localStorage.isEmpty, isFalse);
|
|
window.localStorage.clear();
|
|
expect(window.localStorage.isEmpty, isTrue);
|
|
});
|
|
}
|