anchor.diff:  }
   
   @Component(
  -  selector: 'third-child',
  -  template: '',
  -)
  -class ThirdChildComponent extends RouterLifecycleLogger {
  -  final String componentName = '$ThirdChildComponent';
  -  final List<String> lifecycleLog;
  -
  -  ThirdChildComponent(@Inject(lifecycleLogToken) this.lifecycleLog);
  -}
  -
  -@Component(
     selector: 'first-child',
     template: '',
   )
  
positive.code:       '$SecondChildComponent.onActivate',
      ]);
    });
  
    test('only initialize route with longest prefix match', () async {
      final fixture = await setup<TestMatchCompletePathSegment>('items');
      final log = fixture.assertOnlyInstance.lifecycleLog;
      // TODO(b/70224632): prevent partial matches from being initialized.
      expect(
          log,
          [
            '$ThirdChildComponent.ngOnInit',
            '$ThirdChildComponent.canActivate',
            '$ThirdChildComponent.onActivate'
          ],
          skip: true);
    });
  }
  
  const lifecycleLogToken = const OpaqueToken('lifecycleLog');
  
  Future<NgTestFixture<T>> setup<T>([String initialPath]) async {
    final locationStrategy = new MockLocationStrategy();
    if (initialPath != null) {
      locationStrategy.internalPath = initialPath;
    }
    final testBed = new NgTestBed<T>().addProviders([
      new Provider(lifecycleLogToken, useValue: []),
      new Provider(Location),
      new Provider(LocationStrategy, useValue: locationStrategy),
      new Provider(Router, useClass: RouterImpl),
    ]);
    return testBed.create();
  }
  
negative.code: import 'package:angular/angular.dart';
  import 'package:angular_router/angular_router.dart';
  import 'package:angular_router/testing.dart';
  import 'package:angular_test/angular_test.dart';
  
  // ignore: uri_has_not_been_generated
  