コード例 #1
0
  describe('DomSharedStylesHost', () => {
    var doc;
    var ssh: DomSharedStylesHost;
    var someHost: Element;
    beforeEach(() => {
      doc = DOM.createHtmlDocument();
      doc.title = '';
      ssh = new DomSharedStylesHost(doc);
      someHost = DOM.createElement('div');
    });

    it('should add existing styles to new hosts', () => {
      ssh.addStyles(['a {};']);
      ssh.addHost(someHost);
      expect(DOM.getInnerHTML(someHost)).toEqual('<style>a {};</style>');
    });

    it('should add new styles to hosts', () => {
      ssh.addHost(someHost);
      ssh.addStyles(['a {};']);
      expect(DOM.getInnerHTML(someHost)).toEqual('<style>a {};</style>');
    });

    it('should add styles only once to hosts', () => {
      ssh.addStyles(['a {};']);
      ssh.addHost(someHost);
      ssh.addStyles(['a {};']);
      expect(DOM.getInnerHTML(someHost)).toEqual('<style>a {};</style>');
    });

    it('should use the document head as default host', () => {
      ssh.addStyles(['a {};', 'b {};']);
      expect(doc.head).toHaveText('a {};b {};');
    });
  });
コード例 #2
0
 it('should use the document head as default host', () => {
   ssh.addStyles(['a {};', 'b {};']);
   expect(doc.head).toHaveText('a {};b {};');
 });
コード例 #3
0
 it('should add styles only once to hosts', () => {
   ssh.addStyles(['a {};']);
   ssh.addHost(someHost);
   ssh.addStyles(['a {};']);
   expect(DOM.getInnerHTML(someHost)).toEqual('<style>a {};</style>');
 });
コード例 #4
0
 it('should add existing styles to new hosts', () => {
   ssh.addStyles(['a {};']);
   ssh.addHost(someHost);
   expect(DOM.getInnerHTML(someHost)).toEqual('<style>a {};</style>');
 });
コード例 #5
0
 useFactory: (domSharedStylesHost: DomSharedStylesHost) => {
   var doc: any = parseDocument(document);
   domSharedStylesHost.addHost(doc.head);
   return doc;
 },
コード例 #6
0
 constructor(
   public el: ElementRef,
   public domSharedStylesHost: DomSharedStylesHost) {
   domSharedStylesHost.addHost(el.nativeElement);
 }