Move.

Допис

Діліться своїми знаннями.

Raju.
Raju158
Apr 06, 2025
Питання та відповіді експертів

Як перевірити функцію з параметром отримання в Sui?

Я намагаюся протестувати receive_objectфункцію з Receivingпараметром у Sui на основі документів за цим посилання. Спочатку я створив тест на прикладі, але я боюся з тим, як змусити надісланий аргумент бути ти Receivingпом. Я також намагався позначити тип прийому, але зіткнувся з помилками. Чи може хтось допомогти мені правильно перевірити цю функцію?

  • Move CLI
  • Move
0
4
Поділитися
Коментарі
.

Відповіді

4
tomek.
Apr 6 2025, 19:22

Якщо у вас все ще виникають проблеми з позначенням Receivingтипу у ваших тестах, може бути корисно провести тест за допомогою SUI CLI. За допомогою CLI ви можете легко вказати аргументи типу за допомогою --type-argsпрапорця, що може спростити ваш сценарій тестування.

0
Коментарі
.
Dominikus .
Apr 7 2025, 00:46

У деяких тестових сценаріях передача об'єктів безпосередньо у вигляді спільного використання може не працювати належним чином, особливо якщо ви отримуєте помилки, пов'язані з правами створення інстанцій. Коригування способу структуризації транзакцій для полегшення спільного використання об'єктів спочатку, перед спробою публічного отримання, може вирішити ці проблеми.

0
Коментарі
.
Caplec.
Apr 7 2025, 01:34

Спочатку вам може знадобитися структурувати ваш тест таким чином, щоб передати об'єкт за SharedObjectдопомогою одного TransactionBlock. Receiving<T>У наступному TransactionBlock ви можете викликати функцію модуля для прийняття, тобто функцію з. Цей підхід гарантує, що об'єкт спочатку належним чином поділяється перед спробою його отримати.

0
Коментарі
.
cod.
cod95
Apr 7 2025, 02:29

При передачі об'єкта використання public_transferметоду правильно, якщо ви маєте намір надати об'єкт повну власність, навіть якщо ви спеціально не передаєте його на aSharedObject. Обидва методи підходять для різних випадків використання, тому переконайтеся, що ви використовуєте той, який відповідає вашій меті.

0
Коментарі
.

Ви знаєте відповідь?

Будь ласка, увійдіть та поділіться нею.

Move is an executable bytecode language used to implement custom transactions and smart contracts.

148Пости231Відповіді
Sui.X.Peera.

Зароби свою частку з 1000 Sui

Заробляй бали репутації та отримуй винагороди за допомогу в розвитку спільноти Sui.

Ми використовуємо файли cookie, щоб гарантувати вам найкращий досвід на нашому сайті.
Детальніше