Cyfrin Updraft.

Допис

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

thegreatfeez.
Jan 04, 2025
Питання та відповіді експертів

Випробування твердості ливарного виробництва

Що може не так у моєму коді?

 function testFundUpdatesFundedDataStructure() public {
        fundMe.fund{value: 10e18}();
        
        uint256 amountFunded = fundMe.getAddressToAmountFunded(address(this));
        assertEq(amountFunded, 10e18);
    }```

отримуємо цю помилку:

 [14658] ФундаМетТест: :ТестФундуєтьСтруктура даних ()
 ├─ [2658] FundMe: :фонд {вартість: 1000000000000000000} ()
 │ ├─ [0] 0x0000000000000000000000000000000000000000: :Останні дані круглого ряду () [статичний дзвінок]
 │ │ └─ ← [Зупинка] 
 │ └─ ← [Повернути] EvmError: Повернути
 └─ ← [Повернути] EvmError: Повернути
  • Cyfrin Updraft
  • Foundry
  • Solidity
1
3
Поділитися
Коментарі
.

Відповіді

3
The8bitGHOST.
Jan 5 2025, 10:43

замість thisв

uint256 amountFunded = fundMe.getAddressToAmountFunded(address(this));

спробуйте використовувати msg.sender

uint256 amountFunded = fundMe.getAddressToAmountFunded(address(msg.sender));
1
Коментарі
.
thegreatfeez.
Jan 5 2025, 16:05

все одно те ж саме, це повна помилка:

Ran 1 test for test/FundMeTest.t.sol:FundMeTest
[FAIL: EvmError: Revert] testFundUpdatesFundedDataStructure() (gas: 14658)
Traces:
  [2716771] FundMeTest::setUp()
    ├─ [1364919] → new DeployFundMe@0x5615dEB798BB3E4dFa0139dFa1b3D433Cc23b72f
    │   └─ ← [Return] 6707 bytes of code
    ├─ [1312235] DeployFundMe::run()
    │   ├─ [858779] → new HelperConfig@0x104fBc016F4bb334D775a19E8A6510109AC63E00
    │   │   ├─ [0] VM::startBroadcast()
    │   │   │   └─ ← [Return] 
    │   │   ├─ [367647] → new MockV3Aggregator@0x34A1D3fff3958843C43aD80F30b94c510645C316
    │   │   │   └─ ← [Return] 1059 bytes of code
    │   │   ├─ [0] VM::stopBroadcast()
    │   │   │   └─ ← [Return] 
    │   │   └─ ← [Return] 2153 bytes of code
    │   ├─ [358] HelperConfig::activeNetworkConfig() [staticcall]
    │   │   └─ ← [Return] 0x0000000000000000000000000000000000000000
    │   ├─ [0] VM::startBroadcast()
    │   │   └─ ← [Return] 
    │   ├─ [386177] → new FundMe@0x90193C961A926261B756D1E5bb255e67ff9498A1
    │   │   └─ ← [Return] 1806 bytes of code
    │   ├─ [0] VM::stopBroadcast()
    │   │   └─ ← [Return] 
    │   └─ ← [Return] FundMe: [0x90193C961A926261B756D1E5bb255e67ff9498A1]
    └─ ← [Stop] 

  [14658] FundMeTest::testFundUpdatesFundedDataStructure()
    ├─ [2658] FundMe::fund{value: 10000000000000000000}()
    │   ├─ [0] 0x0000000000000000000000000000000000000000::latestRoundData() [staticcall]
    │   │   └─ ← [Stop] 
    │   └─ ← [Revert] EvmError: Revert
    └─ ← [Revert] EvmError: Revert

Suite result: FAILED. 0 passed; 1 failed; 0 skipped; finished in 3.39ms (474.29µs CPU time)
1
Коментарі
.
The8bitGHOST.
Jan 5 2025, 17:58

Чи можете ви поділитися функцією фонду?

0xcc0b...e70b.
Jan 10 2025, 05:10

Чи можете ви також поділитися повним тестовим костюмом? (Особливо функція SetUp)

0
Коментарі
.

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

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

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