name: moysklad-import
description: |
  Импорт из МойСклад (ТЗ 2.10): сохранение/маскирование токена, test-connection,
  импорт контрагентов и товаров через фоновый job, идемпотентность повторного
  импорта (overwrite=false → Skipped), обновление по ключу (overwrite=true →
  Updated), и корректность маппинга полей MoySklad → доменные сущности.

  MoySkladClient наведён на локальный mock-сервер (MoySklad:BaseUrl), который
  отдаёт JSON в формате реального API remap 1.2 (поля сверены с MoySkladDtos /
  dev.moysklad.ru). Так проверяем именно нашу логику импорта, не дёргая прод.

preconditions:
  reset_db: true
  smoke_login_super_admin: true

steps:
  - id: step01_bootstrap_and_connect
    title: "Орг + mock MoySklad + сохранение токена (маскирование) + test-connection 200"
  - id: step02_import_counterparties_create
    title: "Импорт контрагентов: job Succeeded, Created=2, маппинг полей верен"
  - id: step03_import_counterparties_idempotent
    title: "Повторный импорт (overwrite=false): Skipped=2, дублей нет"
  - id: step04_import_counterparties_overwrite
    title: "Импорт overwrite=true с изменёнными данными: Updated=2, поля обновлены"
  - id: step05_import_products_create
    title: "Импорт товаров: Created=1, группа создана, маппинг (артикул/НДС/цена/штрихкод/группа/страна)"
  - id: step06_import_products_idempotent
    title: "Повторный импорт товаров (overwrite=false): Skipped=1, дублей нет"
  - id: step07_cleanup
    title: "Остановка mock-сервера"
