vscode vscodium launch.json Jest: Как запускать Typescript

Через ts-node

Можно запускать через пакет ts-node, установите его (по-идее можно и как зависимость чисто для разработки) и затем можно использовать такую конфигурацию:

javascript jest ExperimentalWarning: VM Modules is an experimental feature and might change at any time

ExperimentalWarning: VM Modules is an experimental feature and might change at any time

Кажется, что именно исправить это предупреждение пока нельзя, разве что выключить отображение предупреждений

npm Список установленных пакетов с версиями, Узнать почему пакет установлен - какие его версии есть в зависимостях

В корне проекта в терминале выполняем npm ls:

npm ls

-- выведет список установленных пакетов (зависимости первого уровня), ответ может иметь вид:

pascal-js-intro@ /var/www/pascal.js-intro
├── @types/jest@29.5.12
├── @types/node@20.11.26
├── jest@29.7.0
├── ts-jest@29.1.2
├── ts-node@10.9.2
└── typescript@5.4.2

Узнать почему установлен конкретный пакет и его версии

Например:

jest typescript (WARN) Define `ts-jest` config under `globals` is deprecated. Please do transform

ts-jest[ts-jest-transformer] (WARN) Define `ts-jest` config under `globals` is deprecated. Please do
transform: {

: ['ts-jest', { /* ts-jest config goes here in Jest */ }],
},

Возможное решение

Переписать с варианта:

export  default  {
  moduleDirectories: ['node_modules', '<rootDir>'],
  preset: 'ts-jest',
  testEnvironment: 'node',
  extensionsToTreatAsEsm: ['.ts'],
  globals: {
    "ts-jest": {
      "useESM": true
    }
  },
};

НА:

Jest и Typescript: Как настроить работу

Для nodejs 20, можно проверсти такие настройки

  1. Запускать тесты будем командой:
    npm test

    Которую можно как-то так:

    "scripts": {
        "test": "node --experimental-vm-modules node_modules/.bin/jest tests/__tests__"
    }

    -- где в нашем случае tests/__tests__ -- папка (относительно корня проекта), в которой лежат тесты.

The 'import.meta' meta-property is only allowed when the - Jest Typescript

В ответ на запуск команды:

node --experimental-vm-modules node_modules/.bin/jest tests/__tests__

получаем:

The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'.

Решение

Решение уже обсуждалось тут

codeception symfony functional Программная авторизация в тестах, мок пользователя, подмена - изолированное тестирование

Предварительная информация

Ниже речь идет об организации авторизации в функциональных тестов на симфони с помощью кодесепшн в случае, если нам нужно программно авторизоваться, чтобы не зависить от модуля/микросервиса авторизации.

В основе кода, приведенного ниже, лежит использование симфоневского метода loginUser().

symfony Где проверяются доступны по аннотациям/атрибудем роля (security, vedor)

Задача

Напр. имеется доступ:

#[IsGranted('ROLE_USER')]

Надо узнать в каком пакете и как (какие данные извлекаются) происходит проверка авторизации
Общая задача: в целом кратко процесс проверки доступа

После общего решения также можно сравнить: чем отличаются проверки доступа для "реальной" авторизации и через loginUser()
в тестах

Pages

Subscribe to fkn+antitotal RSS