https://github.com/angular/angular
Raw File
Tip revision: 46afa8a91f719cf1ab706fad9d4b8e8b67aa15fe authored by Jessica Janiuk on 19 July 2023, 19:08:10 UTC
release: cut the v16.1.6 release
Tip revision: 46afa8a
ng_deep_spec.ts
/**
 * @license
 * Copyright Google LLC All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://angular.io/license
 */

import {shim} from './utils';

describe('ShadowCss, ng-deep', () => {
  it('should handle /deep/', () => {
    const css = shim('x /deep/ y {}', 'contenta');
    expect(css).toEqualCss('x[contenta] y {}');
  });

  it('should handle >>>', () => {
    const css = shim('x >>> y {}', 'contenta');
    expect(css).toEqualCss('x[contenta] y {}');
  });

  it('should handle ::ng-deep', () => {
    let css = '::ng-deep y {}';
    expect(shim(css, 'contenta')).toEqualCss('y {}');
    css = 'x ::ng-deep y {}';
    expect(shim(css, 'contenta')).toEqualCss('x[contenta] y {}');
    css = ':host > ::ng-deep .x {}';
    expect(shim(css, 'contenta', 'h')).toEqualCss('[h] > .x {}');
    css = ':host ::ng-deep > .x {}';
    expect(shim(css, 'contenta', 'h')).toEqualCss('[h] > .x {}');
    css = ':host > ::ng-deep > .x {}';
    expect(shim(css, 'contenta', 'h')).toEqualCss('[h] > > .x {}');
  });
});
back to top