3.0 KiB
3.0 KiB
SHINE Payments v2: тестовый план (Devnet)
Цель
Проверить:
- создание PDA и инициализацию;
- покупку обычных билетов (очередь 1);
- выдачу DAO-лимитов менеджеру;
- создание менеджерских билетов в очередь 1 и 2;
- корректный приоритет выплат (очередь 1 > очередь 2);
- перевод средств в DAO и награды вызывающему шаг выплат.
Сценарий А: один кошелек
- Открыть
admin_tools, выполнитьinit. - В
buy_ticketкупить несколько билетов в очередь 1. - В
dao_tools(тем же кошельком, если он DAO) выдать лимиты менеджеру. - В
manager_toolsсоздать билеты в очередь 1 и 2. - Пополнить inflow-вольт вручную.
- В
track_ticketзапускать шаг выплат и смотреть, что:- сначала платится очередь 1;
- после исчерпания очереди 1 платится очередь 2;
- если в процессе снова появился билет в очереди 1, приоритет возвращается к ней.
Сценарий Б: разные кошельки
- Кошелек DAO: выдает лимиты менеджерам.
- Кошелек менеджера: добавляет тикеты через
manager_add_ticket. - Кошельки покупателей: покупают обычные билеты.
- Любой кошелек: вызывает
step_payout.
Проверка результата
- У получателей тикетов растут балансы.
- В DAO поступает симметричная сумма
Xпри каждом шаге выплаты. - Вызывающий шаг выплат получает фиксированную награду.
- Агрегаты очередей (
total/paid/sum_total/sum_paid) изменяются ожидаемо.
Возврат средств после теста
- Перевести остатки SOL с тестовых кошельков на исходный кошелек.
- При необходимости закрыть неиспользуемые program-аккаунты и вернуть ренту.
- Проверить, что ключевые кошельки и devnet-параметры не содержат лишних средств/прав после завершения теста.
Ограничения текущего этапа
- DAO пока заменен обычным кошельком.
- Финальный governance (голосование DAO) не подключен.
- Расчеты пока в SOL/lamports, переход на USDT по курсу запланирован.