Acceptance tests — memo
Feature: Мемо (memo)
Scenario: Открытие первого тайла
Given memo 4x4 с 8 парами
When игрок 1 flip_tile {index: 0}
Then тайл 0 revealed
And фаза OneRevealed
Scenario: Несовпадение скрывает тайлы
Given OneRevealed с тайлом 0 = "A"
When игрок flip_tile {index: 1} где тайл 1 = "B"
Then тайлы 0 и 1 hidden
And ход переходит к сопернику
Scenario: Совпадение даёт очко
Given OneRevealed с тайлом 0 = "A"
When flip_tile {index: 5} где тайл 5 = "A"
Then пара matched
And pairs_found игрока +1
And ход остаётся у игрока
Scenario: Победа
Given все пары matched
Then winner_id = игрок с max pairs_found