diff --git a/modules/angular2/src/render/dom/shadow_dom/shadow_css.ts b/modules/angular2/src/render/dom/shadow_dom/shadow_css.ts index 5d654abd9e..3a8587aed7 100644 --- a/modules/angular2/src/render/dom/shadow_dom/shadow_css.ts +++ b/modules/angular2/src/render/dom/shadow_dom/shadow_css.ts @@ -258,7 +258,7 @@ export class ShadowCss { var rule = m[0]; rule = StringWrapper.replace(rule, m[2], ''); rule = StringWrapper.replace(rule, m[1], m[3]); - r = rule + '\n\n'; + r += rule + '\n\n'; } return r; } diff --git a/modules/angular2/test/render/dom/shadow_dom/shadow_css_spec.ts b/modules/angular2/test/render/dom/shadow_dom/shadow_css_spec.ts index 880856cae6..463f6ffd5b 100644 --- a/modules/angular2/test/render/dom/shadow_dom/shadow_css_spec.ts +++ b/modules/angular2/test/render/dom/shadow_dom/shadow_css_spec.ts @@ -123,6 +123,14 @@ export function main() { expect(StringWrapper.contains(css, '#menu > .bar {;color:blue;}')).toBeTruthy(); }); + it('should support multiple instances polyfill-unscoped-rule', () => { + var css = s("polyfill-unscoped-rule {content: 'foo';color: blue;}" + + "polyfill-unscoped-rule {content: 'bar';color: blue;}", + 'a'); + expect(StringWrapper.contains(css, 'foo {;color:blue;}')).toBeTruthy(); + expect(StringWrapper.contains(css, 'bar {;color:blue;}')).toBeTruthy(); + }); + it('should support polyfill-rule', () => { var css = s("polyfill-rule {content: ':host.foo .bar';color: blue;}", 'a', 'a-host'); expect(css).toEqual('[a-host].foo .bar {color:blue;}');