// 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)); }); }