anchor.diff:  
           router.route('/foo/bar').then(expectAsync((_) {
             expect(counters, {
  -              'fooPreEnter': 1,
  +            'fooPreEnter': 1,
  +            'fooPreLeave': 0,
  +            'fooEnter': 1,
  +            'fooLeave': 0,
  +            'barPreEnter': 0,
  +            'barPreLeave': 0,
  +            'barEnter': 0,
  +            'barLeave': 0
  +          });
  +
  +          router.route('/foo/baz').then(expectAsync((_) {
  +            expect(counters, {
  +              'fooPreEnter': 2, // +1
                 'fooPreLeave': 0,
  -              'fooEnter': 1,
  +              'fooEnter': 2,    // +1
                 'fooLeave': 0,
                 'barPreEnter': 0,
                 'barPreLeave': 0,
                 'barEnter': 0,
                 'barLeave': 0
  -          });
  -
  -          router.route('/foo/baz').then(expectAsync((_) {
  -            expect(counters, {
  -                'fooPreEnter': 2,
  -                'fooPreLeave': 0,
  -                'fooEnter': 2,
  -                'fooLeave': 0,
  -                'barPreEnter': 0,
  -                'barPreLeave': 0,
  -                'barEnter': 0,
  -                'barLeave': 0
               });
   
               router.route('/bar').then(expectAsync((_) {
                 expect(counters, {
  -                  'fooPreEnter': 2,
  -                  'fooPreLeave': 1,
  -                  'fooEnter': 2,
  -                  'fooLeave': 1,
  -                  'barPreEnter': 1,
  -                  'barPreLeave': 0,
  -                  'barEnter': 1,
  -                  'barLeave': 0
  +                'fooPreEnter': 2,
  +                'fooPreLeave': 1, // +1
  +                'fooEnter': 2,
  +                'fooLeave': 1,    // +1
  +                'barPreEnter': 1, // +1
  +                'barPreLeave': 0,
  +                'barEnter': 1,    // +1
  +                'barLeave': 0
                 });
               }));
             }));
  
positive.code: 
          router.route('/foo/bar').then(expectAsync((_) {
            expect(counters, {
                'fooPreEnter': 1,
                'fooPreLeave': 0,
                'fooEnter': 1,
                'fooLeave': 0,
                'barPreEnter': 0,
                'barPreLeave': 0,
                'barEnter': 0,
                'barLeave': 0
            });
  
            router.route('/foo/baz').then(expectAsync((_) {
              expect(counters, {
                  'fooPreEnter': 2,
                  'fooPreLeave': 1,
                  'fooEnter': 2,
                  'fooLeave': 1,
                  'barPreEnter': 0,
                  'barPreLeave': 0,
                  'barEnter': 0,
                  'barLeave': 0
              });
  
              router.route('/bar').then(expectAsync((_) {
                expect(counters, {
                    'fooPreEnter': 2,
                    'fooPreLeave': 2,
                    'fooEnter': 2,
                    'fooLeave': 2,
                    'barPreEnter': 1,
                    'barPreLeave': 0,
                    'barEnter': 1,
                    'barLeave': 0
                });
              }));
            }));
  
negative.code: 
        router.route('/foo/bar').then(expectAsync((_) {
          expect(counters, {
            'fooPreEnter': 1, // +1
            'fooPreLeave': 0,
            'fooEnter': 1,    // +1
            'fooLeave': 0,
            'barPreEnter': 0,
            'barPreLeave': 0,
  