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

Side by Side Diff: tests/html/crypto_test.dart

Issue 14367012: Move to new dart:typeddata types for dart2js (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 8 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library crypto_test; 5 library crypto_test;
6 import '../../pkg/unittest/lib/unittest.dart'; 6 import '../../pkg/unittest/lib/unittest.dart';
7 import '../../pkg/unittest/lib/html_individual_config.dart'; 7 import '../../pkg/unittest/lib/html_individual_config.dart';
8 import 'dart:html'; 8 import 'dart:html';
9 import 'dart:typeddata';
9 10
10 main() { 11 main() {
11 useHtmlIndividualConfiguration(); 12 useHtmlIndividualConfiguration();
12 13
13 group('supported', () { 14 group('supported', () {
14 test('supported', () { 15 test('supported', () {
15 expect(Crypto.supported, true); 16 expect(Crypto.supported, true);
16 }); 17 });
17 }); 18 });
18 19
19 group('functional', () { 20 group('functional', () {
20 if (Crypto.supported) { 21 if (Crypto.supported) {
21 // This will actually pass on FF since it has a Crypto API, but it is 22 // This will actually pass on FF since it has a Crypto API, but it is
22 // incompatible. 23 // incompatible.
23 test('exists', () { 24 test('exists', () {
24 var crypto = window.crypto; 25 var crypto = window.crypto;
25 expect(crypto is Crypto, isTrue); 26 expect(crypto is Crypto, isTrue);
26 }); 27 });
27 28
28 test('successful call', () { 29 test('successful call', () {
29 var crypto = window.crypto; 30 var crypto = window.crypto;
30 var data = new Uint8Array(100); 31 var data = new Uint8List(100);
31 expect(data.every((e) => e == 0), isTrue); 32 expect(data.every((e) => e == 0), isTrue);
32 crypto.getRandomValues(data); 33 crypto.getRandomValues(data);
33 // In theory this is flaky. However, in practice you will get 100 zeroes 34 // In theory this is flaky. However, in practice you will get 100 zeroes
34 // in a row from a cryptographically secure random number generator so 35 // in a row from a cryptographically secure random number generator so
35 // rarely that we don't have to worry about it. 36 // rarely that we don't have to worry about it.
36 expect(data.any((e) => e != 0), isTrue); 37 expect(data.any((e) => e != 0), isTrue);
37 }); 38 });
38 39
39 test('type mismatch', () { 40 test('type mismatch', () {
40 var crypto = window.crypto; 41 var crypto = window.crypto;
41 var data = new Float32Array(100); 42 var data = new Float32List(100);
42 expect(() { 43 expect(() {
43 crypto.getRandomValues(data); 44 crypto.getRandomValues(data);
44 }, throws, reason: 'Only typed array views with integer types allowed'); 45 }, throws, reason: 'Only typed array views with integer types allowed');
45 }); 46 });
46 } 47 }
47 }); 48 });
48 } 49 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698