آزمایشگاه پیادهسازی
چالش حسابداری سهمهای BakerFi
حسابداری دارایی و سهم در BakerFi را بررسی کنید و با نوشتن یک تست Foundry نشان دهید آیا اقدامات یک کاربر میتواند بهصورت ناعادلانه بر سپردهگذار بعدی اثر بگذارد یا نه.
آنچه تمرین خواهید کرد
بررسی اثر تغییرات
totalAssets()بر تبدیل دارایی به سهم درdeposit()مدلسازی چند کاربر و مقایسه سهمها، داراییهای سپردهشده و نتایج برداشت آنها
نوشتن یک تست Foundry برای اثبات یا رد شرط امنیتی حسابداری مطرحشده در Lab
آمادگی و تکمیل
پیش از شروع این Lab، بخش Learn مربوط به BakerFi Leveraged Vault را کامل کنید.
باید این مفاهیم را درک کرده باشید:
- نقش
Strategy.deployed()در محاسبهtotalAssets() - تبدیل دارایی به سهم با
RebaseLibrary.toBase() - نحوه محاسبه سهمهای جدید در
deposit() - نحوه تبدیل سهم به دارایی در
withdraw() - رفتار تقسیم صحیح Solidity در نتایج اعشاری
ریپازیتوری شامل مدل آسیبپذیر خزانه، قراردادهای کمکی و یک فایل تست Foundry قابلویرایش برای کاربر است.
نتیجه تکمیل
برای تکمیل Lab باید یک تست Foundry موفق بنویسید که وضعیت حسابداری موردنظر را ایجاد کند و نشان دهد آیا یک کاربر میتواند نسبت به دارایی واردشده توسط کاربر دیگر، ادعایی نامتناسب به دست آورد یا خیر.