|  | // 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 'dart:typed_data'; | 
|  |  | 
|  | import 'package:expect/minitest.dart'; // ignore: deprecated_member_use_from_same_package | 
|  |  | 
|  | main() { | 
|  | test('basic', () { | 
|  | var b = new Blob([]); | 
|  | expect(b.size, 0); | 
|  | }); | 
|  |  | 
|  | test('type1', () { | 
|  | // OPTIONALS var b = new Blob(['Harry'], type: 'text'); | 
|  | var b = new Blob(['Harry'], 'text'); | 
|  | expect(b.size, 5); | 
|  | expect(b.type, 'text'); | 
|  | }); | 
|  |  | 
|  | test('endings1', () { | 
|  | // OPTIONALS var b = new Blob(['A\nB\n'], endings: 'transparent'); | 
|  | var b = new Blob(['A\nB\n'], null, 'transparent'); | 
|  | expect(b.size, 4); | 
|  | }); | 
|  |  | 
|  | test('endings2', () { | 
|  | // OPTIONALS var b = new Blob(['A\nB\n'], endings: 'native'); | 
|  | var b = new Blob(['A\nB\n'], null, 'native'); | 
|  | expect(b.size, predicate((x) => x == 4 || x == 6), | 
|  | reason: "b.size should be 4 or 6"); | 
|  | }); | 
|  |  | 
|  | test('twoStrings', () { | 
|  | // OPTIONALS var b = new Blob(['123', 'xyz'], type: 'text/plain;charset=UTF-8'); | 
|  | var b = new Blob(['123', 'xyz'], 'text/plain;charset=UTF-8'); | 
|  | expect(b.size, 6); | 
|  | }); | 
|  |  | 
|  | test('fromBlob1', () { | 
|  | var b1 = new Blob([]); | 
|  | var b2 = new Blob([b1]); | 
|  | expect(b2.size, 0); | 
|  | }); | 
|  |  | 
|  | test('fromBlob2', () { | 
|  | var b1 = new Blob(['x']); | 
|  | var b2 = new Blob([b1, b1]); | 
|  | expect(b1.size, 1); | 
|  | expect(b2.size, 2); | 
|  | }); | 
|  |  | 
|  | test('fromArrayBuffer', () { | 
|  | var a = new Uint8List(100).buffer; // i.e. new ArrayBuffer(100); | 
|  | var b = new Blob([a, a]); | 
|  | expect(b.size, 200); | 
|  | }); | 
|  | } |