blob: 18f14350584cbb85a83774bf9add7bcee5f994ba [file] [log] [blame]
// Copyright (c) 2013, 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.
/// @assertion Iterable map(f(E element))
/// Returns a lazy [Iterable] where each element e of this is
/// replaced by the result of f(e).
/// @description Checks that the correct [Iterable] is returned.
/// @author msyabro
import "../../../Utils/expect.dart";
main() {
var m = new Map<int,int>();
m[1] = 2;
m[2] = 5;
m[6] = 9;
m[10] = 120;
m[3] = 76;
m[0] = 0;
m[8] = 7;
var runes = new Runes('\x01\x02\x06\x0a\x03\x00\x08');
var res = runes.map( (e) => m[e]);
for(int i = 0; i < runes.length; ++i) {
Expect.equals(m[runes.elementAt(i)], res.elementAt(i));
}
runes = new Runes('');
res = runes.map( (e) => 0);
Expect.isTrue(res.isEmpty);
runes = new Runes('string');
res = runes.map( (e) => 1 );
for(int i = 0; i < runes.length; ++i) {
Expect.equals(1, res.elementAt(i));
}
}