Skip to content

Commit 1bb6493

Browse files
ddoktorskicptartur
authored andcommitted
Remove supports-panic-backtrace test condition
commit-id:9d3bc55c
1 parent 2ac01c0 commit 1bb6493

File tree

3 files changed

+59
-78
lines changed

3 files changed

+59
-78
lines changed

.github/workflows/ci.yml

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -206,20 +206,6 @@ jobs:
206206
- name: Run Forge Debugging tests
207207
run: cargo test --release -p forge --features debugging --test main e2e::debugging
208208

209-
test-forge-backtrace:
210-
name: Test Forge Backtrace - support for `panic-backtrace` in Scarb.toml
211-
runs-on: ubuntu-latest
212-
steps:
213-
- uses: actions/checkout@v4
214-
- uses: dtolnay/rust-toolchain@stable
215-
- uses: Swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6 # v2.7.8
216-
- uses: software-mansion/setup-scarb@v1
217-
with:
218-
scarb-version: "nightly-2025-03-27"
219-
- uses: software-mansion/setup-universal-sierra-compiler@58146c4184fa6ec5e8aaf02309ab85e35f782ed0 # v1.0.0
220-
- name: Run Forge Debugging tests
221-
run: cargo test --release -p forge --features supports-panic-backtrace --test main e2e::backtrace
222-
223209
test-forge-scarb-plugin:
224210
name: Test Forge Scarb Plugin
225211
runs-on: ubuntu-latest

crates/forge/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ no_scarb_installed = []
1212
debugging = []
1313
assert_non_exact_gas = ["test_utils/assert_non_exact_gas"]
1414
skip_plugin_checks = []
15-
supports-panic-backtrace = []
1615
interact-with-state = []
1716

1817
[dependencies]

crates/forge/tests/e2e/backtrace.rs

Lines changed: 59 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ use assert_fs::fixture::{FileWriteStr, PathChild};
44
use indoc::indoc;
55
use shared::test_utils::output_assert::{AsOutput, assert_stdout_contains};
66
use std::fs;
7+
use test_utils::use_snforge_std_compatibility;
78
use toml_edit::{DocumentMut, value};
89

910
#[test]
@@ -178,38 +179,79 @@ fn test_backtrace_panic() {
178179
.assert()
179180
.failure();
180181

181-
if cfg!(feature = "supports-panic-backtrace") {
182+
if use_snforge_std_compatibility() {
183+
assert_stdout_contains(
184+
output,
185+
indoc! {
186+
"[FAIL] backtrace_panic::Test::test_contract_panics
187+
188+
Failure data:
189+
0x417373657274206661696c6564 ('Assert failed')
190+
191+
error occurred in contract 'InnerContract'
192+
stack backtrace:
193+
0: backtrace_panic::InnerContract::__wrapper__InnerContract__inner
194+
at [..]lib.cairo:34:9
195+
196+
error occurred in contract 'OuterContract'
197+
stack backtrace:
198+
0: backtrace_panic::OuterContract::__wrapper__OuterContract__outer
199+
at [..]lib.cairo:15:9
200+
201+
[FAIL] backtrace_panic::Test::test_fork_contract_panics
202+
203+
Failure data:
204+
0x417373657274206661696c6564 ('Assert failed')
205+
206+
error occurred in forked contract with class hash: 0x554cb276fb5eb0788344f5431b9a166e2f445d8a91c7aef79d8c77e7eede956
207+
208+
error occurred in contract 'OuterContract'
209+
stack backtrace:
210+
0: backtrace_panic::OuterContract::__wrapper__OuterContract__outer
211+
at [..]lib.cairo:15:9"
212+
},
213+
);
214+
} else {
182215
assert_stdout_contains(
183216
output,
184217
indoc! {
185218
"Failure data:
186219
0x417373657274206661696c6564 ('Assert failed')
187220
error occurred in contract 'InnerContract'
188221
stack backtrace:
189-
0: (inlined) core::array::ArrayImpl::append
190-
at [..]array.cairo:135:9
191-
1: core::array_inline_macro
192-
at [..]lib.cairo:364:11
222+
0: core::panic_with_const_felt252
223+
at [..]lib.cairo:364:5
224+
1: core::panic_with_const_felt252
225+
at [..]lib.cairo:364:5
193226
2: (inlined) core::Felt252PartialEq::eq
194227
at [..]lib.cairo:231:9
195228
3: (inlined) backtrace_panic::InnerContract::inner_call
196-
at [..]traits.cairo:442:10
229+
at [..]traits.cairo:441:10
197230
4: (inlined) backtrace_panic::InnerContract::InnerContract::inner
198231
at [..]lib.cairo:40:16
199232
5: backtrace_panic::InnerContract::__wrapper__InnerContract__inner
200233
at [..]lib.cairo:35:13
201234
202235
error occurred in contract 'OuterContract'
203236
stack backtrace:
204-
0: (inlined) backtrace_panic::IInnerContractDispatcherImpl::inner
205-
at [..]lib.cairo:22:1
206-
1: (inlined) backtrace_panic::OuterContract::OuterContract::outer
207-
at [..]lib.cairo:17:13
208-
2: backtrace_panic::OuterContract::__wrapper__OuterContract__outer
237+
0: backtrace_panic::OuterContract::__wrapper__OuterContract__outer
209238
at [..]lib.cairo:15:9"
210239
},
211240
);
212-
} else {
241+
}
242+
}
243+
244+
#[test]
245+
fn test_backtrace_panic_without_inlines() {
246+
let temp = setup_package("backtrace_panic");
247+
without_inlines(&temp);
248+
249+
let output = test_runner(&temp)
250+
.env("SNFORGE_BACKTRACE", "1")
251+
.assert()
252+
.failure();
253+
254+
if use_snforge_std_compatibility() {
213255
assert_stdout_contains(
214256
output,
215257
indoc! {
@@ -241,20 +283,7 @@ fn test_backtrace_panic() {
241283
at [..]lib.cairo:15:9"
242284
},
243285
);
244-
}
245-
}
246-
247-
#[test]
248-
fn test_backtrace_panic_without_inlines() {
249-
let temp = setup_package("backtrace_panic");
250-
without_inlines(&temp);
251-
252-
let output = test_runner(&temp)
253-
.env("SNFORGE_BACKTRACE", "1")
254-
.assert()
255-
.failure();
256-
257-
if cfg!(feature = "supports-panic-backtrace") {
286+
} else {
258287
assert_stdout_contains(
259288
output,
260289
indoc! {
@@ -306,43 +335,10 @@ fn test_backtrace_panic_without_inlines() {
306335
at [..]lib.cairo:15:9"
307336
},
308337
);
309-
} else {
310-
assert_stdout_contains(
311-
output,
312-
indoc! {
313-
"[FAIL] backtrace_panic::Test::test_contract_panics
314-
315-
Failure data:
316-
0x417373657274206661696c6564 ('Assert failed')
317-
318-
error occurred in contract 'InnerContract'
319-
stack backtrace:
320-
0: backtrace_panic::InnerContract::__wrapper__InnerContract__inner
321-
at [..]lib.cairo:34:9
322-
323-
error occurred in contract 'OuterContract'
324-
stack backtrace:
325-
0: backtrace_panic::OuterContract::__wrapper__OuterContract__outer
326-
at [..]lib.cairo:15:9
327-
328-
[FAIL] backtrace_panic::Test::test_fork_contract_panics
329-
330-
Failure data:
331-
0x417373657274206661696c6564 ('Assert failed')
332-
333-
error occurred in forked contract with class hash: 0x554cb276fb5eb0788344f5431b9a166e2f445d8a91c7aef79d8c77e7eede956
334-
335-
error occurred in contract 'OuterContract'
336-
stack backtrace:
337-
0: backtrace_panic::OuterContract::__wrapper__OuterContract__outer
338-
at [..]lib.cairo:15:9"
339-
},
340-
);
341338
}
342339
}
343340

344341
#[test]
345-
#[cfg_attr(not(feature = "supports-panic-backtrace"), ignore)]
346342
fn test_handled_error_not_display() {
347343
let temp = setup_package("dispatchers");
348344

@@ -364,10 +360,10 @@ fn test_handled_error_not_display() {
364360
indoc! {"
365361
error occurred in contract 'ErrorHandler'
366362
stack backtrace:
367-
0: (inlined) core::array::ArrayImpl::append
368-
at [..]array.cairo:135:9
369-
1: core::array_inline_macro
370-
at [..]lib.cairo:364:11
363+
0: core::panic_with_const_felt252
364+
at [..]lib.cairo:364:5
365+
1: core::panic_with_const_felt252
366+
at [..]lib.cairo:364:5
371367
2: dispatchers::error_handler::ErrorHandler::ErrorHandler::catch_panic_and_fail
372368
at [..]error_handler.cairo:50:21
373369
3: dispatchers::error_handler::ErrorHandler::__wrapper__ErrorHandler__catch_panic_and_fail

0 commit comments

Comments
 (0)