Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat add exclude pattern running tests #2361

Open
wants to merge 14 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- `snforge new` now adds the `snfoundry_trace`, `coverage`, and `profile` directories to `.gitignore`.
- Custom types can be used in fuzz testing by implementing the `Fuzzable` trait
- Support for Cairo 2.10.0
- Added `--exclude` flag to filter out tests matching a specified pattern
- Excluded tests are now displayed in test summary output

#### Changed

Expand Down
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ members = [

[workspace.package]
version = "0.38.0"
edition = "2024"
edition = "2021"
repository = "https://github.com/foundry-rs/starknet-foundry"
license = "MIT"
license-file = "LICENSE"
Expand Down
2 changes: 1 addition & 1 deletion crates/cheatnet/src/constants.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ use std::sync::Arc;

use blockifier::execution::entry_point::{CallEntryPoint, CallType};
use cairo_lang_starknet_classes::casm_contract_class::CasmContractClass;
use conversions::IntoConv;
use conversions::string::TryFromHexStr;
use conversions::IntoConv;
use indoc::indoc;
use runtime::starknet::constants::{
TEST_ADDRESS, TEST_CONTRACT_CLASS_HASH, TEST_ENTRY_POINT_SELECTOR,
Expand Down
2 changes: 1 addition & 1 deletion crates/cheatnet/src/forking/state.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ use std::io::Read;
use std::sync::Arc;
use tokio::runtime::Handle;
use tokio::task;
use universal_sierra_compiler_api::{SierraType, compile_sierra};
use universal_sierra_compiler_api::{compile_sierra, SierraType};
use url::Url;

#[derive(Debug)]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
use crate::runtime_extensions::call_to_blockifier_runtime_extension::CheatnetState;
use crate::runtime_extensions::call_to_blockifier_runtime_extension::execution::entry_point::{
ContractClassEntryPointExecutionResult, EntryPointExecutionErrorWithTrace, OnErrorLastPc,
};
use crate::runtime_extensions::call_to_blockifier_runtime_extension::CheatnetState;
use crate::runtime_extensions::cheatable_starknet_runtime_extension::CheatableStarknetRuntimeExtension;
use crate::runtime_extensions::common::get_relocated_vm_trace;
use blockifier::execution::contract_class::CompiledClassV1;
use blockifier::execution::entry_point_execution::{
VmExecutionContext, finalize_execution, prepare_call_arguments,
finalize_execution, prepare_call_arguments, VmExecutionContext,
};
use blockifier::execution::errors::PreExecutionError;
use blockifier::execution::execution_utils::{
ReadOnlySegments, write_felt, write_maybe_relocatable,
write_felt, write_maybe_relocatable, ReadOnlySegments,
};
use blockifier::execution::stack_trace::{
Cairo1RevertHeader, extract_trailing_cairo1_revert_trace,
extract_trailing_cairo1_revert_trace, Cairo1RevertHeader,
};
use blockifier::execution::syscalls::hint_processor::SyscallHintProcessor;
use blockifier::versioned_constants::GasCosts;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use blockifier::{
entry_point::{CallEntryPoint, CallType},
execution_utils::ReadOnlySegment,
syscalls::{
hint_processor::{SyscallExecutionError, SyscallHintProcessor, create_retdata_segment},
hint_processor::{create_retdata_segment, SyscallExecutionError, SyscallHintProcessor},
syscall_base::SyscallResult,
},
},
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
use crate::runtime_extensions::call_to_blockifier_runtime_extension::CheatnetState;
use crate::runtime_extensions::call_to_blockifier_runtime_extension::execution::entry_point::execute_constructor_entry_point;
use crate::runtime_extensions::call_to_blockifier_runtime_extension::CheatnetState;
use blockifier::execution::syscalls::hint_processor::SyscallHintProcessor;
use blockifier::execution::syscalls::{
DeployRequest, DeployResponse, LibraryCallRequest, SyscallResponse, syscall_base::SyscallResult,
syscall_base::SyscallResult, DeployRequest, DeployResponse, LibraryCallRequest, SyscallResponse,
};
use blockifier::execution::{call_info::CallInfo, entry_point::ConstructorContext};
use blockifier::execution::{
execution_utils::ReadOnlySegment,
syscalls::{WriteResponseResult, hint_processor::write_segment},
syscalls::{hint_processor::write_segment, WriteResponseResult},
};
use blockifier::state::errors::StateError;
use blockifier::{
execution::execution_utils::update_remaining_gas,
execution::syscalls::{CallContractRequest, hint_processor::create_retdata_segment},
execution::syscalls::{hint_processor::create_retdata_segment, CallContractRequest},
};
use blockifier::{
execution::{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
use crate::runtime_extensions::call_to_blockifier_runtime_extension::CheatnetState;
use crate::runtime_extensions::call_to_blockifier_runtime_extension::execution::entry_point::{
ContractClassEntryPointExecutionResult, OnErrorLastPc,
};
use crate::runtime_extensions::deprecated_cheatable_starknet_extension::DeprecatedCheatableStarknetRuntimeExtension;
use crate::runtime_extensions::call_to_blockifier_runtime_extension::CheatnetState;
use crate::runtime_extensions::deprecated_cheatable_starknet_extension::runtime::{
DeprecatedExtendedRuntime, DeprecatedStarknetRuntime,
};
use crate::runtime_extensions::deprecated_cheatable_starknet_extension::DeprecatedCheatableStarknetRuntimeExtension;
use blockifier::execution::contract_class::CompiledClassV0;
use blockifier::execution::deprecated_entry_point_execution::{
VmExecutionContext, finalize_execution, initialize_execution_context, prepare_call_arguments,
finalize_execution, initialize_execution_context, prepare_call_arguments, VmExecutionContext,
};
use blockifier::execution::entry_point::{CallEntryPoint, EntryPointExecutionContext};
use blockifier::execution::errors::EntryPointExecutionError;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ use cairo_vm::{
vm::vm_core::VirtualMachine,
};
use conversions::{
serde::serialize::{raw::RawFeltVec, SerializeToFeltVec},
IntoConv,
serde::serialize::{SerializeToFeltVec, raw::RawFeltVec},
};
use starknet_types_core::felt::Felt;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ use blockifier::execution::{
deprecated_syscalls::DeprecatedSyscallSelector,
execution_utils::ReadOnlySegment,
syscalls::{
SyscallRequest, SyscallResponse, SyscallResponseWrapper,
hint_processor::SyscallHintProcessor,
hint_processor::SyscallHintProcessor, SyscallRequest, SyscallResponse,
SyscallResponseWrapper,
},
};
use cairo_vm::types::relocatable::MaybeRelocatable;
Expand All @@ -22,7 +22,7 @@ use starknet_api::core::ContractAddress;
use crate::state::CheatnetState;

use crate::runtime_extensions::call_to_blockifier_runtime_extension::rpc::{
AddressOrClassHash, call_entry_point,
call_entry_point, AddressOrClassHash,
};
use crate::runtime_extensions::call_to_blockifier_runtime_extension::{
execution::cheated_syscalls::SingleSegmentResponse,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ use blockifier::execution::{
use blockifier::state::errors::StateError;
use cairo_vm::vm::runners::cairo_runner::ExecutionResources;
use conversions::{
IntoConv, byte_array::ByteArray, serde::serialize::CairoSerialize, string::IntoHexStr,
byte_array::ByteArray, serde::serialize::CairoSerialize, string::IntoHexStr, IntoConv,
};
use shared::utils::build_readable_text;
use starknet_api::{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ use anyhow::Result;
use blockifier::execution::entry_point::EntryPointExecutionContext;
use blockifier::execution::syscalls::hint_processor::OUT_OF_GAS_ERROR;
use blockifier::execution::syscalls::{
SyscallRequest, SyscallRequestWrapper, SyscallResponse, SyscallResponseWrapper,
syscall_base::SyscallResult,
syscall_base::SyscallResult, SyscallRequest, SyscallRequestWrapper, SyscallResponse,
SyscallResponseWrapper,
};
use blockifier::execution::{
common_hints::HintExecutionResult,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ use blockifier::execution::deprecated_syscalls::{
};
use blockifier::execution::entry_point::{CallEntryPoint, CallType, ConstructorContext};
use blockifier::execution::execution_utils::{
ReadOnlySegment, execute_deployment, write_maybe_relocatable,
execute_deployment, write_maybe_relocatable, ReadOnlySegment,
};
use conversions::FromConv;

Expand All @@ -23,7 +23,7 @@ use num_traits::ToPrimitive;
use starknet_api::block::{BlockNumber, BlockTimestamp};
use starknet_api::contract_class::EntryPointType;
use starknet_api::core::{
ClassHash, ContractAddress, EntryPointSelector, calculate_contract_address,
calculate_contract_address, ClassHash, ContractAddress, EntryPointSelector,
};
use starknet_api::transaction::fields::Calldata;
use starknet_types_core::felt::Felt;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use crate::runtime_extensions::cheatable_starknet_runtime_extension::felt_from_p
use anyhow::Result;
use blockifier::execution::{
deprecated_syscalls::{
DeprecatedSyscallSelector, hint_processor::DeprecatedSyscallHintProcessor,
hint_processor::DeprecatedSyscallHintProcessor, DeprecatedSyscallSelector,
},
hint_code,
};
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use conversions::{byte_array::ByteArray, serde::deserialize::CairoDeserialize};
use serde::{
Deserialize, Deserializer,
de::{self, MapAccess, Visitor},
Deserialize, Deserializer,
};
use starknet_types_core::felt::Felt;
use std::str::FromStr;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use super::cheat_execution_info::{
BlockInfoMockOperations, CheatArguments, ExecutionInfoMockOperations, Operation,
};
use crate::CheatnetState;
use crate::state::CheatSpan;
use crate::CheatnetState;
use starknet_api::core::ContractAddress;

impl CheatnetState {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use super::cheat_execution_info::{
BlockInfoMockOperations, CheatArguments, ExecutionInfoMockOperations, Operation,
};
use crate::CheatnetState;
use crate::state::CheatSpan;
use crate::CheatnetState;
use starknet_api::core::ContractAddress;

impl CheatnetState {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use super::cheat_execution_info::{CheatArguments, ExecutionInfoMockOperations, Operation};
use crate::CheatnetState;
use crate::state::CheatSpan;
use crate::CheatnetState;
use starknet_api::core::ContractAddress;

impl CheatnetState {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use crate::{
CheatnetState,
state::{CheatSpan, CheatStatus},
CheatnetState,
};
use conversions::serde::{deserialize::CairoDeserialize, serialize::CairoSerialize};
use starknet_api::core::ContractAddress;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use super::cheat_execution_info::{
BlockInfoMockOperations, CheatArguments, ExecutionInfoMockOperations, Operation,
};
use crate::CheatnetState;
use crate::state::CheatSpan;
use crate::CheatnetState;
use starknet_api::core::ContractAddress;

impl CheatnetState {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ use crate::runtime_extensions::forge_runtime_extension::{
use anyhow::{Context, Result};
use blockifier::execution::contract_class::{CompiledClassV1, RunnableCompiledClass};
use blockifier::state::{errors::StateError, state_api::State};
use conversions::IntoConv;
use conversions::serde::serialize::CairoSerialize;
use conversions::IntoConv;
use starknet::core::types::contract::SierraClass;
use starknet_api::contract_class::SierraVersion;
use starknet_api::core::{ClassHash, CompiledClassHash};
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use crate::{
runtime_extensions::call_to_blockifier_runtime_extension::rpc::{CallResult, call_l1_handler},
runtime_extensions::call_to_blockifier_runtime_extension::rpc::{call_l1_handler, CallResult},
state::CheatnetState,
};
use blockifier::execution::syscalls::hint_processor::SyscallHintProcessor;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use crate::CheatnetState;
use crate::state::{CheatSpan, CheatStatus};
use crate::CheatnetState;
use starknet_api::core::{ContractAddress, EntryPointSelector};
use starknet_types_core::felt::Felt;
use std::collections::hash_map::Entry;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use crate::CheatnetState;
use crate::runtime_extensions::common::create_execute_calldata;
use crate::CheatnetState;
use conversions::IntoConv;
use runtime::starknet::constants::TEST_ADDRESS;
use starknet_api::core::{ClassHash, ContractAddress, calculate_contract_address};
use starknet_api::core::{calculate_contract_address, ClassHash, ContractAddress};
use starknet_types_core::felt::Felt;

impl CheatnetState {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use crate::CheatnetState;
use blockifier::execution::call_info::OrderedEvent;
use conversions::{FromConv, serde::serialize::CairoSerialize};
use conversions::{serde::serialize::CairoSerialize, FromConv};
use starknet_api::core::ContractAddress;
use starknet_types_core::felt::Felt;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use anyhow::{Result, anyhow};
use anyhow::{anyhow, Result};
use conversions::felt::TryInferFormat;
use conversions::{
byte_array::ByteArray, serde::serialize::SerializeToFeltVec, string::TryFromDecStr,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,23 @@ use crate::runtime_extensions::common::sum_syscall_counters;
use crate::runtime_extensions::forge_runtime_extension::cheatcodes::replace_bytecode::ReplaceBytecodeError;
use crate::runtime_extensions::{
call_to_blockifier_runtime_extension::{
CallToBlockifierRuntime,
rpc::{CallFailure, CallResult},
CallToBlockifierRuntime,
},
cheatable_starknet_runtime_extension::SyscallSelector,
common::get_relocated_vm_trace,
forge_runtime_extension::cheatcodes::{
CheatcodeError,
declare::declare,
deploy::{deploy, deploy_at},
generate_random_felt::generate_random_felt,
get_class_hash::get_class_hash,
l1_handler_execute::l1_handler_execute,
storage::{calculate_variable_address, load, store},
CheatcodeError,
},
};
use crate::state::{CallTrace, CallTraceNode};
use anyhow::{Context, Result, anyhow};
use anyhow::{anyhow, Context, Result};
use blockifier::context::TransactionContext;
use blockifier::execution::call_info::CallExecution;
use blockifier::execution::entry_point::CallEntryPoint;
Expand All @@ -38,11 +38,11 @@ use cairo_vm::vm::{
errors::hint_errors::HintError, runners::cairo_runner::ExecutionResources,
vm_core::VirtualMachine,
};
use conversions::IntoConv;
use conversions::byte_array::ByteArray;
use conversions::felt::TryInferFormat;
use conversions::serde::deserialize::BufferReader;
use conversions::serde::serialize::CairoSerialize;
use conversions::IntoConv;
use data_transformer::cairo_types::CairoU256;
use rand::prelude::StdRng;
use runtime::starknet::constants::TEST_CONTRACT_CLASS_HASH;
Expand Down
2 changes: 1 addition & 1 deletion crates/cheatnet/src/state.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ use blockifier::execution::syscalls::hint_processor::SyscallCounter;
use blockifier::state::errors::StateError::UndeclaredClassHash;
use blockifier::state::state_api::{StateReader, StateResult};
use cairo_annotations::trace_data::L1Resources;
use cairo_vm::Felt252;
use cairo_vm::vm::runners::cairo_runner::ExecutionResources;
use cairo_vm::vm::trace::trace_entry::RelocatedTraceEntry;
use cairo_vm::Felt252;
use conversions::serde::deserialize::CairoDeserialize;
use conversions::serde::serialize::{BufferWriter, CairoSerialize};
use conversions::string::TryFromHexStr;
Expand Down
2 changes: 1 addition & 1 deletion crates/cheatnet/tests/builtins/panic_call.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ use crate::common::call_contract;
use crate::common::{deploy_contract, felt_selector_from_name, state::create_cached_state};
use cairo_lang_utils::byte_array::BYTE_ARRAY_MAGIC;
use cheatnet::state::CheatnetState;
use conversions::IntoConv;
use conversions::felt::FromShortString;
use conversions::string::TryFromHexStr;
use conversions::IntoConv;
use starknet_types_core::felt::Felt;
use test_case::test_case;

Expand Down
2 changes: 1 addition & 1 deletion crates/cheatnet/tests/cheatcodes/cheat_execution_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ use cheatnet::runtime_extensions::forge_runtime_extension::cheatcodes::cheat_exe
CheatArguments, ExecutionInfoMockOperations, Operation, TxInfoMockOperations,
};
use cheatnet::state::CheatSpan;
use conversions::IntoConv;
use conversions::serde::deserialize::{BufferReader, CairoDeserialize};
use conversions::IntoConv;
use starknet_api::{core::ContractAddress, transaction::TransactionHash};
use starknet_types_core::felt::Felt;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use super::test_environment::TestEnvironment;
use crate::{common::assertions::assert_success, common::get_contracts};
use cheatnet::state::CheatSpan;
use conversions::IntoConv;
use conversions::string::TryFromHexStr;
use conversions::IntoConv;
use runtime::starknet::context::SEQUENCER_ADDRESS;
use starknet_api::core::ContractAddress;
use starknet_types_core::felt::Felt;
Expand Down
4 changes: 2 additions & 2 deletions crates/cheatnet/tests/cheatcodes/declare.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use crate::common::assertions::ClassHashAssert;
use crate::common::{get_contracts, state::create_cached_state};
use cheatnet::runtime_extensions::forge_runtime_extension::cheatcodes::CheatcodeError;
use cheatnet::runtime_extensions::forge_runtime_extension::cheatcodes::declare::{
DeclareResult, declare,
declare, DeclareResult,
};
use cheatnet::runtime_extensions::forge_runtime_extension::cheatcodes::CheatcodeError;
use runtime::EnhancedHintError;

#[test]
Expand Down
Loading