更改 tsx 文件时,Stenciljs 会自动完成单元测试文件

Stenciljs autocomplete the unit testing files when the tsx files are changed

有没有办法自动完成 .spec.tsx 文件,使其与 .tsx 文件中所做的更改相匹配,或者每次必须手动完成时。更准确地说,我想自动完成 expect(page.root).toEqualHtml(RIGHT_HERE).

这是一个例子:

import { newSpecPage } from '@stencil/core/testing';
import { MyComp} from './mapc-events';

describe('my-component-name', () => {
  it('renders', async () => {
    const page = await newSpecPage({
      components: [MyComp],
      html: `<my-component></my-component>`,
      autoApplyChanges: true
    });
    expect(page.root).toEqualHtml(`
      <my-component>
        <mock:shadow-root>
          <slot></slot>
        </mock:shadow-root>
      </my-component>
    `);
  });
});

不幸的是,目前这是不可能的,因为 toEqualHtml 接受一个字符串参数(即,TypeScript 的类型检查器可以接受传递它 'HelloWorld' 或任何其他无效的 HTML ).开发环境没有很好的方法来识别模板组件的 TSX 中的更改并在提供给 toEqualHtml

的字符串中正确反映该更改