blob: 2766887cc84cd1d81734f83d34d7680095782f81 [file] [log] [blame]
// Copyright (c) 2011, 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.
library collection.from.test;
import "package:expect/expect.dart";
import 'dart:collection' show Queue;
class CollectionFromTest {
static testMain() {
var set = new Set<int>();
set.add(1);
set.add(2);
set.add(4);
check(set, new List<int>.from(set));
check(set, new List.from(set));
check(set, new Queue<int>.from(set));
check(set, new Queue.from(set));
check(set, new Set<int>.from(set));
check(set, new Set.from(set));
}
static check(Iterable initial, Iterable other) {
Expect.equals(3, initial.length);
Expect.equals(initial.length, other.length);
int initialSum = 0;
int otherSum = 0;
initial.forEach((e) { initialSum += e; });
other.forEach((e) { otherSum += e; });
Expect.equals(4 + 2 + 1, otherSum);
Expect.equals(otherSum, initialSum);
}
}
main() {
CollectionFromTest.testMain();
}