blob: d3aa9fc969cc7738f1bf15de1001f45341b7576a [file] [log] [blame]
// Copyright (c) 2016, 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 'package:collection/collection.dart';
import 'package:test/test.dart';
void main() {
test('uses the given equality', () {
var map = EqualityMap(const IterableEquality());
expect(map, isEmpty);
map[[1, 2, 3]] = 1;
expect(map, containsPair([1, 2, 3], 1));
map[[1, 2, 3]] = 2;
expect(map, containsPair([1, 2, 3], 2));
map[[2, 3, 4]] = 3;
expect(map, containsPair([1, 2, 3], 2));
expect(map, containsPair([2, 3, 4], 3));
});
test('EqualityMap.from() prefers the lattermost equivalent key', () {
var map = EqualityMap.from(const IterableEquality(), {
[1, 2, 3]: 1,
[2, 3, 4]: 2,
[1, 2, 3]: 3,
[2, 3, 4]: 4,
[1, 2, 3]: 5,
[1, 2, 3]: 6,
});
expect(map, containsPair([1, 2, 3], 6));
expect(map, containsPair([2, 3, 4], 4));
});
}