anchor.diff:        test('it should be called if event triggered on anchor element', () {
           AnchorElement anchor = new AnchorElement();
           anchor.href = '#test1';
  -        document.documentElement.append(toRemove = anchor);
  +        document.body.append(toRemove = anchor);
   
           var mockWindow = new MockWindow();
           var mockHashChangeController = new StreamController<Event>(sync: true);
  
positive.code:         'bEnter': 0
        });
  
        router.route('').then((_) {
          expect(counters, {
            'aEnter': 1,
            'bEnter': 1
          });
  
          var routeA = router.root.findRoute('a');
          router.go('b', {'bar': 'bbb'}, startingFrom: routeA).then((_) {
            var mockHistory = mockWindow.history;
  
            mockHistory.getLogs(callsTo('pushState', anything))
               .verify(happenedExactly(1));
            expect(mockHistory.getLogs(callsTo('pushState', anything)).last.args,
                [null, '', '/null/bbb']);
          });
        });
      });
  
negative.code:         mockWindow.location.when(callsTo('get host')).alwaysReturn(window.location.host);
  
          var router = new Router(useFragment: true, windowImpl: mockWindow);
          router.listen(appRoot: anchor);
  
          router.onRouteStart.listen(expectAsync((RouteStartEvent e) {
            expect(e.uri, 'test2');
          }, max: 2));
  
          anchorChild.click();
        });
  