anchor.diff:  
   @Directive(
     selector: '[needsViewContainerRef]',
  -  // TODO(b/71710685): Change to `Visibility.local` to reduce code size.
  -  visibility: Visibility.all,
   )
   class NeedsViewContainerRef {
     var viewContainer;
  
positive.code:         var testBed = new NgTestBed<NeedsHostAppService>().addProviders(
              [const Provider('appService', useValue: 'appService')]);
          var fixture = await testBed.create();
          var el = getDebugNode(fixture.rootElement) as DebugElement;
          expect(el.componentInstance.service, 'appService');
        });
      });
      group('static attributes', () {
        test('should be injectable', () async {
          var testBed = new NgTestBed<InjectStaticAttributeTest>();
          var fixture = await testBed.create();
          var el = getDebugNode(fixture.rootElement) as DebugElement;
          var needsAttribute = el.children[0].inject(NeedsAttribute);
          expect(needsAttribute.typeAttribute, 'text');
          expect(needsAttribute.titleAttribute, '');
          expect(needsAttribute.fooAttribute, null);
  
negative.code:       useFactory: skipSelfFactory,
      ),
    ],
  )
  class SkipSelfSomeOtherDirective {}
  
  