anchor.diff:            target.clear();
             expect(target, isEmpty);
             expect(target.inverse, isEmpty);
  +        });
  +        test('define if absent', () {
  +          var target = new BiMap.from(example);
  +          target.putIfAbsent(1, () => fail('Value already present!'));
  +          target.putIfAbsent(4, () => 'd');
  +          expect(target[4], 'd');
           });
         });
       });
  
positive.code:           expect(example.inverse.values, [1, 2, 3]);
            expect(example.inverse.containsValue(2), isTrue);
            expect(example.inverse.containsValue('b'), isFalse);
          });
        });
        group('writing', () {
  
negative.code:           expect(target.keys, ['a', 'b', 'c']);
            expect(target.values, [1, 2, 3]);
          });
          test('iterables (error)', () {
            expect(() => new BiMap.fromIterables([1], []), throwsArgumentError);
            expect(() => new BiMap.fromIterables([], [1]), throwsArgumentError);
          });
        });
        group('accessing', () {
          test('indexed', () {
  