Cyfrin Updraft.

Publication

Partagez vos connaissances.

thegreatfeez.
Jan 04, 2025
Questions et Réponses avec des Experts

Test de solidité en fonderie

Qu'est-ce qui ne va pas dans mon code ?

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

obtenir cette erreur :

 [14658] FundMetest : :testFundUpdatesFundedDataStructure ()
 ─ [2658] FundMe : :fund {valeur : 1000000000000000000} ()
 ─ [0] 0x0000000000000000000000000000000000000000000000000000 : :lateStroundData () [appel statique]
 │ │ ─ ← [Arrêter] 
 [Revert] EvmError : Revert
 ─ ← [Revert] EvmError : Rétablir
  • Cyfrin Updraft
  • Foundry
  • Solidity
1
3
Partager
Commentaires
.

Réponses

3
The8bitGHOST.
Jan 5 2025, 10:43

au lieu thisde

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

essayez d'utiliser msg.sender

uint256 amountFunded = fundMe.getAddressToAmountFunded(address(msg.sender));
1
Commentaires
.
thegreatfeez.
Jan 5 2025, 16:05

c'est toujours pareil, voici l'erreur complète :

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
Commentaires
.
The8bitGHOST.
Jan 5 2025, 17:58

pouvez-vous partager la fonction du fonds ?

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

Pouvez-vous également partager la combinaison de test complète ? (En particulier la fonction SetUp)

0
Commentaires
.

Connaissez-vous la réponse ?

Veuillez vous connecter et la partager.

Cyfrin Updraft is an education platform specializing on teaching the next generation of smart contract developers

195Publications196Réponses
Nous utilisons des cookies pour vous assurer la meilleure expérience sur notre site Web.
Plus d'infos