| // 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:test/test.dart'; |
| |
| import 'package:collection/collection.dart'; |
| |
| void main() { |
| late UnionSetController<int> controller; |
| late Set<int> innerSet; |
| setUp(() { |
| innerSet = {1, 2, 3}; |
| controller = UnionSetController()..add(innerSet); |
| }); |
| |
| test('exposes a union set', () { |
| expect(controller.set, unorderedEquals([1, 2, 3])); |
| |
| controller.add({3, 4, 5}); |
| expect(controller.set, unorderedEquals([1, 2, 3, 4, 5])); |
| |
| controller.remove(innerSet); |
| expect(controller.set, unorderedEquals([3, 4, 5])); |
| }); |
| |
| test('exposes a disjoint union set', () { |
| expect(controller.set, unorderedEquals([1, 2, 3])); |
| |
| controller.add({4, 5, 6}); |
| expect(controller.set, unorderedEquals([1, 2, 3, 4, 5, 6])); |
| |
| controller.remove(innerSet); |
| expect(controller.set, unorderedEquals([4, 5, 6])); |
| }); |
| } |