Skip to content

test(integration): MySQL CI + AuthManager lifecycle - #496

Open
Ibochkarev wants to merge 2 commits into
betafrom
test/issue-429-mysql-auth-lifecycle
Open

test(integration): MySQL CI + AuthManager lifecycle#496
Ibochkarev wants to merge 2 commits into
betafrom
test/issue-429-mysql-auth-lifecycle

Conversation

@Ibochkarev

@Ibochkarev Ibochkarev commented Aug 1, 2026

Copy link
Copy Markdown
Member

Описание

Инфра и интеграционные тесты для #429: MySQL 8 service в job PHP lint + smoke (MS3_TEST_MYSQL_*, pdo_mysql). AuthManagerLifecycleTest на SQLite всегда: PasswordAuthProvider login, rotate токена, чужой токен без переноса корзины, logout с guest mint, validate/revoke, lockout. Группа @group mysql — тот же Auth lifecycle и OptionSync на реальном MySQL (локально skip без DSN). В OptionSync assert порядок ключей игнорируется через ksort (MySQL может вернуть tags раньше color).

Тип изменений

  • Исправление бага (non-breaking change)
  • Новая функциональность (non-breaking change)
  • Breaking change (изменение, ломающее обратную совместимость)
  • Рефакторинг (без изменения функциональности)
  • Документация
  • Другое (опишите): интеграционные тесты + CI MySQL

Связанные Issues

Refs #429

Как это было протестировано?

Локально (MySQL group skip без DSN):

cd core/components/minishop3
composer install
composer ci:php

CI на PR: MySQL service поднимается, @group mysql не skip; PHP lint + smoke, PHPStan, vueManager lint — pass.

  • Ручное тестирование
  • Автоматические тесты (composer ci:php / composer test, npm run lint:ci, composer stan / GitHub Actions CI)
  • Тестирование на разных версиях PHP/MODX

Конфигурация тестирования:

  • MiniShop3: ветка test/issue-429-mysql-auth-lifecycle
  • MODX: n/a (PDO/SQLite harness)
  • PHP: локальный + CI (MySQL 8 service)

Скриншоты (если применимо)

n/a

Чеклист

  • Код соответствует стилю проекта
  • Добавлены/обновлены комментарии в сложных местах
  • Изменения не ломают существующую функциональность
  • Лексиконы добавлены на двух языках (ru/en)
  • PHPStan проходит без новых ошибок (composer stan / CI job PHPStan)
  • ESLint проходит без ошибок (npm run lint:ci для Vue)
  • Обновлён CHANGELOG.md (для значимых изменений)

Дополнительные заметки

Лексиконы, Vue и CHANGELOG не затрагивались. Локально без MS3_TEST_MYSQL_* MySQL-тесты пропускаются; в CI DSN задаёт workflow.

@Ibochkarev
Ibochkarev requested a review from biz87 August 1, 2026 10:17
Add MySQL 8 service to PHP CI for @group mysql tests, cover AuthManager
authenticate/session/logout/lockout against PDO stores, and OptionSync on MySQL.
MySQL may return tags before color; compare after ksort.
@Ibochkarev
Ibochkarev force-pushed the test/issue-429-mysql-auth-lifecycle branch from b4b8634 to 6f69007 Compare August 2, 2026 02:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant