(async: AsyncTestCompleter, normalizer: DirectiveNormalizer, xhr: SpyXHR) => {
   programXhrSpy(xhr, {
     'package:some/module/test.css': 'a@import "test2.css"',
     'package:some/module/test2.css': 'b'
   });
   normalizer
       .normalizeExternalStylesheets(new CompileTemplateMetadata({
         template: '',
         templateUrl: '',
         styleUrls: ['package:some/module/test.css']
       }))
       .then((template: CompileTemplateMetadata) => {
         expect(template.externalStylesheets.length).toBe(2);
         expect(template.externalStylesheets[0]).toEqual(new CompileStylesheetMetadata({
           moduleUrl: 'package:some/module/test.css',
           styles: ['a'],
           styleUrls: ['package:some/module/test2.css']
         }));
         expect(template.externalStylesheets[1]).toEqual(new CompileStylesheetMetadata({
           moduleUrl: 'package:some/module/test2.css',
           styles: ['b'],
           styleUrls: []
         }));
         async.done();
       });
 }));
 (async: AsyncTestCompleter, normalizer: DirectiveNormalizer,
  resourceLoader: SpyResourceLoader) => {
   programResourceLoaderSpy(resourceLoader, {'package:some/module/test.css': 'a'});
   normalizer
       .normalizeExternalStylesheets(new CompileTemplateMetadata({
         template: '',
         templateUrl: '',
         styleUrls: ['package:some/module/test.css']
       }))
       .then((template: CompileTemplateMetadata) => {
         expect(template.externalStylesheets.length).toBe(1);
         expect(template.externalStylesheets[0]).toEqual(new CompileStylesheetMetadata({
           moduleUrl: 'package:some/module/test.css',
           styles: ['a'],
           styleUrls: []
         }));
         async.done();
       });
 }));