Files
sdk/tests/html/serialized_script_value_test.dart
T
gram@google.com 981c4b11df Restructure pkg/unittest and pkg/webdriver to follow the pub conventions.
This means all imports of unittest in our test code had to change to include 'lib' in the path.
While doing that change I changed the library/imports to the new syntax in the affected files.
Review URL: https://codereview.chromium.org//11301046

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@14443 260f80e4-7a28-3924-810f-c04153c831b5
2012-11-01 23:09:47 +00:00

39 lines
1.2 KiB
Dart

library SerializedScriptValueTest;
import '../../pkg/unittest/lib/unittest.dart';
import '../../pkg/unittest/lib/html_config.dart';
import 'dart:html';
import 'utils.dart';
serializationTest(name, value) => test(name, () {
// To check how value is serialized and deserialized, we create a MessageEvent.
final event = document.$dom_createEvent('MessageEvent');
event.initMessageEvent('', false, false, value, '', '', window, []);
verifyGraph(value, event.data);
});
main() {
useHtmlConfiguration();
serializationTest('null', null);
serializationTest('int', 1);
serializationTest('double', 2.39);
serializationTest('string', 'hey!');
final simpleMap = {'a': 100, 'b': 's'};
final dagMap = { 'x': simpleMap, 'y': simpleMap };
final cyclicMap = { 'b': dagMap };
cyclicMap['a'] = cyclicMap;
serializationTest('simple map', simpleMap);
serializationTest('dag map', dagMap);
serializationTest('cyclic map', cyclicMap);
final simpleList = [ 100, 's'];
final dagList = [ simpleList, simpleList ];
final cyclicList = [ dagList ];
cyclicList.add(cyclicList);
serializationTest('simple list', simpleList);
serializationTest('dag list', dagList);
serializationTest('cyclic list', cyclicList);
}