标签: angular-spectator

参考错误:customElements 未定义

我使用@ @角度9.0.7@ngneat/spectator@5.3.1(用玩笑),Inputmask@5.0.3在一个项目中,一切工作的应用程序时,我跑ng serve,甚至ng build,但是当我尝试运行测试套件的失败@Pipe使用Inputmask

@Pipe

import { Pipe, PipeTransform } from '@angular/core';

import Inputmask from 'inputmask';

@Pipe({
  name: 'appSomePipe',
})
export class SomePipe implements PipeTransform {
  transform(value: string): string {
    return Inputmask.format(value, {
      jitMasking: true,
      mask: '1111-1',
    });
  }
}
Run Code Online (Sandbox Code Playgroud)

@Spec

import { createPipeFactory, SpectatorPipe } from '@ngneat/spectator/jest';

import { SomePipe } from './some.pipe';

describe('SomePipe', () => {
  let spectator: SpectatorPipe<SomePipe>;
  const …
Run Code Online (Sandbox Code Playgroud)

input-mask angular angular-test angular-spectator

11
推荐指数
1
解决办法
3420
查看次数

旁观者角度测试 - 在 ngOnInit 之前传递输入

我正在使用Spectator编写我的 Angular 8 测试并使用Jest来运行它们。根据自述文件,我可以setInput()用来将我的值分配给有效的字段名称。问题是在创建组件后正在验证输入,但在此之前我需要它,因为我在我的ngOnInit方法中使用它进行初始化:

// item.component.ts

@Input() items: Items[] = [];

ngOnInit(): void {
    // do something with this.items
    // read query param 'page' and use it for something
}
Run Code Online (Sandbox Code Playgroud)

// item.component.spec.ts

let spectator: SpectatorRouting<ItemComponent>;
const createComponent = createRoutingFactory({
    component: ItemComponent,
    queryParams: {page: 1}
});

beforeEach(() => spectator = createComponent());

it('test items', () => {
    spectator.setRouteQueryParam('page', '2');
    spectator.setInput("items", myItemsList); 
});
Run Code Online (Sandbox Code Playgroud)

旁观者将正确设置 queryParampage和 Input items,但只有在组件已经创建之后。在组件创建期间ngOnInit将使用 …

jestjs angular angular-spectator

3
推荐指数
1
解决办法
2142
查看次数