- Introduction
- Getting Started
- 1. Installation
- 2. First Steps with Starknet Foundry
- 3. Scarb
- 4. Project Configuration
- snforge Overview
- 5. Running Tests
- 6. Writing Tests
- 7. Test Attributes
- 8. Testing Smart Contracts
- 9. Testing Contracts' Internals
- 10. Using Cheatcodes
- 11. Testing Events
- 12. Testing Messages to L1
- 13. Testing Workspaces
- 14. Test Collection
- 15. Contract Collection
❱
- 15.1. Optimized Mechanism
- 15.2. Old Mechanism
- 16. Gas and VM Resources Estimation
- 17. Coverage
- snforge Advanced Features
- 18. Fork Testing
- 19. Fuzz Testing
- 20. Direct Storage Access
- 21. Profiling
- 22. Debugging
- 23. Oracles
- 24. Parametrized Tests
- 25. Tests Partitioning
- sncast Overview
- 26. Outline
- 27. sncast 101
- 28. Creating And Deploying Accounts
- 29. Account Balance
- 30. Importing Accounts
- 31. Declaring New Contracts
- 32. Deploying New Contracts
- 33. Invoking Contracts
- 34. Dry Run
- 35. Calling Contracts
- 36. Performing Multicall
- 37. Aliases
- 38. Inspecting Transactions
- 39. Verifying Contracts
- 40. Calldata Transformation
- 41. Block Explorers
- 42. Integration With Devnet
- 43. Developer Functionalities
- 44. Ledger Hardware Wallet
❱
- 44.1. EIP-2645 HD Paths
- Foundry Development
- 45. Environment Setup
- 46. Shell snippets
- 47. Snapshot tests
- 48. Predeployed contracts
- 49. Gas expectations
- Appendix
- 50. snforge Commands
❱
- 50.1. test
- 50.2. new
- 50.3. clean
- 50.4. check-requirements
- 50.5. completions
- 50.6. optimize-inlining
- 51. Cheatcodes Reference
❱
- 51.1. Cheating Globally
- 51.2. CheatSpan
- 51.3. caller_address
- 51.4. block_number
- 51.5. block_timestamp
- 51.6. block_hash
- 51.7. sequencer_address
- 51.8. version
- 51.9. account_contract_address
- 51.10. max_fee
- 51.11. signature
- 51.12. transaction_hash
- 51.13. chain_id
- 51.14. nonce
- 51.15. resource_bounds
- 51.16. tip
- 51.17. paymaster_data
- 51.18. nonce_data_availability_mode
- 51.19. fee_data_availability_mode
- 51.20. account_deployment_data
- 51.21. proof_facts
- 51.22. mock_call
- 51.23. get_class_hash
- 51.24. replace_bytecode
- 51.25. l1_handler
- 51.26. spy_events
- 51.27. spy_messages_to_l1
- 51.28. store
- 51.29. load
- 51.30. generate_random_felt
- 51.31. generate_arg
- 51.32. set_balance
- 51.33. Token
- 51.34. interact_with_state
- 52. snforge Library Reference
❱
- 52.1. byte_array
- 52.2. declare
- 52.3. declare!
- 52.4. declare_result
- 52.5. contract_class
- 52.6. get_call_trace
- 52.7. fs
❱
- 52.7.1. file format rules
- 52.7.2. File
- 52.7.3. FileParser
- 52.7.4. read_txt
- 52.7.5. read_json
- 52.8. env
- 52.9. signature
- 52.10. fuzzable
- 52.11. testing
❱
- 52.11.1. get_current_vm_step
- 53. sncast Commands
❱
- 53.1. common flags
- 53.2. account
❱
- 53.2.1. import
- 53.2.2. create
- 53.2.3. deploy
- 53.2.4. delete
- 53.2.5. list
- 53.3. alias
❱
- 53.3.1. list
- 53.4. declare
- 53.5. declare-from
- 53.6. deploy
- 53.7. invoke
- 53.8. call
- 53.9. multicall
❱
- 53.9.1. new
- 53.9.2. run
- 53.9.3. execute
❱
- 53.9.3.1. deploy
- 53.9.3.2. invoke
- 53.10. show-config
- 53.11. config-path
- 53.12. verify
- 53.13. ledger
❱
- 53.13.1. app-version
- 53.13.2. get-public-key
- 53.13.3. sign-hash
- 53.14. completions
- 53.15. get
❱
- 53.15.1. balance
- 53.15.2. block
- 53.15.3. chain-id
- 53.15.4. class-hash-at
- 53.15.5. nonce
- 53.15.6. spec-version
- 53.15.7. state-update
- 53.15.8. syncing
- 53.15.9. tx
- 53.15.10. tx-receipt
- 53.15.11. tx-status
- 53.16. utils
❱
- 53.16.1. serialize
- 53.16.2. class-hash
- 53.16.3. contract-address
- 53.16.4. selector
- 54. snfoundry.toml Reference
- 55. Scarb.toml Reference
- 56. Inlining Optimizer
- 57. Starknet Foundry Github Action
- 58. snforge 0.56.0 Migration Guide
- 59. Blake Hash Support