Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 349c449

Browse files
committed
[DO NOT MERGE] bootstrap: skip some tests that fail on specific jobs
1 parent 7c4ca14 commit 349c449

File tree

1 file changed

+247
-4
lines changed
  • src/bootstrap/src/core/build_steps

1 file changed

+247
-4
lines changed

‎src/bootstrap/src/core/build_steps/test.rs

Lines changed: 247 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
// ignore-tidy-filelength
12
//! Build-and-run steps for `./x.py test` test fixtures
23
//!
34
//! `./x.py test` (aka [`Kind::Test`]) is currently allowed to reach build steps in other modules.
@@ -409,12 +410,254 @@ impl Step for RustAnalyzer {
409410
cargo.arg("--workspace");
410411
cargo.arg("--exclude=xtask");
411412

413+
let mut skip_tests = vec![
414+
// FIXME: may need a fix from https://github.com/rust-lang/rust-analyzer/pull/19124.
415+
"config::tests::cargo_target_dir_subdir",
416+
// FIXME: I think this exercises cargo somehow?
417+
"tests::smoke_test_real_sysroot_cargo",
418+
];
419+
skip_tests.extend(if self.host.starts_with("aarch64-apple") {
420+
vec![
421+
// FIXME: fails on `aarch64-apple` due to `cfg` differences
422+
"item_tree::tests::generics_with_attributes",
423+
"hover::tests::generic_params_disabled_by_cfg",
424+
]
425+
} else if self.host == "i686-pc-windows-gnu" {
426+
// FIXME: fails on `i686-mingw` due to multiple reasons. E.g. unsupport op on 32-bit
427+
// windows-gnu target but on a 64-bit host, i.e. ptr width being different is
428+
// unsupported.
429+
vec![
430+
// FIXME: failed to const eval on 32-bit windows-gnu running on 64-bit host maybe?
431+
"consteval::tests::add",
432+
"consteval::tests::anonymous_const_block",
433+
"consteval::tests::alignment",
434+
"consteval::tests::bit_op",
435+
"consteval::tests::associated_types",
436+
"consteval::tests::boxes",
437+
"consteval::tests::array_and_index",
438+
"consteval::tests::builtin_derive_macro",
439+
"consteval::tests::casts",
440+
"consteval::tests::const_generic_subst_assoc_const_impl",
441+
"consteval::tests::c_string",
442+
"consteval::tests::const_generic_subst_fn",
443+
"consteval::tests::const_impl_assoc",
444+
"consteval::tests::closure_clone",
445+
"consteval::tests::byte_string",
446+
"consteval::tests::closures",
447+
"consteval::tests::const_trait_assoc",
448+
"consteval::tests::coerce_unsized",
449+
"consteval::tests::consts",
450+
"consteval::tests::enums",
451+
"consteval::tests::floating_point",
452+
"consteval::tests::destructing_assignment",
453+
"consteval::tests::floating_point_casts",
454+
"consteval::tests::closure_and_impl_fn",
455+
"consteval::tests::extern_weak_statics",
456+
"consteval::tests::function_call",
457+
"consteval::tests::function_param_patterns",
458+
"consteval::tests::closure_capture_unsized_type",
459+
"consteval::tests::function_pointer",
460+
"consteval::tests::from_ne_bytes",
461+
"consteval::tests::function_pointer_in_constants",
462+
"consteval::tests::from_trait",
463+
"consteval::tests::ifs",
464+
"consteval::tests::generic_fn",
465+
"consteval::tests::dyn_trait",
466+
"consteval::tests::impl_trait",
467+
"consteval::tests::enum_variant_as_function",
468+
"consteval::tests::const_transfer_memory",
469+
"consteval::tests::intrinsics::allocator",
470+
"consteval::tests::function_traits",
471+
"consteval::tests::intrinsics::copy_nonoverlapping",
472+
"consteval::tests::intrinsics::ctlz",
473+
"consteval::tests::intrinsics::ctpop",
474+
"consteval::tests::intrinsics::cttz",
475+
"consteval::tests::intrinsics::const_eval_select",
476+
"consteval::tests::intrinsics::floating_point",
477+
"consteval::tests::for_loops",
478+
"consteval::tests::function_pointer_and_niche_optimization",
479+
"consteval::tests::intrinsics::likely",
480+
"consteval::tests::intrinsics::arith_offset",
481+
"consteval::tests::intrinsics::overflowing_add",
482+
"consteval::tests::intrinsics::atomic",
483+
"consteval::tests::intrinsics::rotate",
484+
"consteval::tests::intrinsics::copy",
485+
"consteval::tests::intrinsics::read_via_copy",
486+
"consteval::tests::intrinsics::saturating",
487+
"consteval::tests::intrinsics::needs_drop",
488+
"consteval::tests::intrinsics::size_of",
489+
"consteval::tests::intrinsics::simd",
490+
"consteval::tests::intrinsics::min_align_of_val",
491+
"consteval::tests::intrinsics::transmute",
492+
"consteval::tests::intrinsics::type_name",
493+
"consteval::tests::intrinsics::wrapping_add",
494+
"consteval::tests::intrinsics::write_bytes",
495+
"consteval::tests::intrinsics::write_via_move",
496+
"consteval::tests::let_else",
497+
"consteval::tests::layout_of_type_with_associated_type_field_defined_inside_body",
498+
"consteval::tests::loops",
499+
"consteval::tests::locals",
500+
"consteval::tests::intrinsics::offset",
501+
"consteval::tests::intrinsics::size_of_val",
502+
"consteval::tests::or_pattern",
503+
"consteval::tests::memory_limit",
504+
"consteval::tests::intrinsics::ptr_offset_from",
505+
"consteval::tests::intrinsics::discriminant_value",
506+
"consteval::tests::path_pattern_matching",
507+
"consteval::tests::overloaded_binop",
508+
"consteval::tests::overloaded_deref",
509+
"consteval::tests::overloaded_index",
510+
"consteval::tests::overloaded_deref_autoref",
511+
"consteval::tests::pattern_matching_ergonomics",
512+
"consteval::tests::pattern_matching_literal",
513+
"consteval::tests::pattern_matching_range",
514+
"consteval::tests::manual_fn_trait_impl",
515+
"consteval::tests::recursion",
516+
"consteval::tests::reference_autoderef",
517+
"consteval::tests::references",
518+
"consteval::tests::ranges",
519+
"consteval::tests::raw_pointer_equality",
520+
"consteval::tests::match_guards",
521+
"consteval::tests::structs",
522+
"consteval::tests::options",
523+
"consteval::tests::trait_method",
524+
"consteval::tests::trait_basic",
525+
"consteval::tests::pattern_matching_slice",
526+
"consteval::tests::string",
527+
"consteval::tests::trait_method_inside_block",
528+
"consteval::tests::statics",
529+
"consteval::tests::tuples",
530+
"consteval::tests::unions",
531+
"consteval::tests::result_layout_niche_optimization",
532+
"consteval::tests::unsized_field",
533+
"consteval::tests::try_block",
534+
"consteval::tests::try_operator",
535+
"mir::eval::tests::closure_capture_array_const_generic",
536+
"mir::eval::tests::closure_layout_in_rpit",
537+
"mir::eval::tests::drop_basic",
538+
"mir::eval::tests::closure_state",
539+
"mir::eval::tests::drop_in_place",
540+
"mir::eval::tests::field_with_associated_type",
541+
"mir::eval::tests::function_with_extern_c_abi",
542+
"mir::eval::tests::generic_impl_for_trait_with_generic_method",
543+
"mir::eval::tests::drop_if_let",
544+
"mir::eval::tests::drop_struct_field",
545+
"mir::eval::tests::index_of_slice_should_preserve_len",
546+
"mir::eval::tests::for_loop",
547+
"mir::eval::tests::manually_drop",
548+
"mir::eval::tests::from_fn",
549+
"mir::eval::tests::long_str_eq_same_prefix",
550+
"mir::eval::tests::posix_getenv",
551+
"mir::eval::tests::memcmp",
552+
"mir::eval::tests::panic_display",
553+
"mir::eval::tests::self_with_capital_s",
554+
"mir::eval::tests::short_circuit_operator",
555+
"mir::eval::tests::panic_fmt",
556+
"mir::eval::tests::regression_14966",
557+
"mir::eval::tests::posix_tls",
558+
"mir::eval::tests::specialization_array_clone",
559+
"mir::eval::tests::unix_write_stdout",
560+
"mir::eval::tests::syscalls",
561+
"tests::regression::regression_14456",
562+
"tests::simple::const_eval_array_repeat_expr",
563+
"tests::simple::const_eval_in_function_signature",
564+
"tests::simple::issue_14275",
565+
"tests::traits::array_length",
566+
"tests::traits::const_generics",
567+
// FIXME: annotation order seems to be different on `i686-mingw`
568+
"annotations::tests::runnable_annotation",
569+
"annotations::tests::struct_references_annotations",
570+
"annotations::tests::struct_and_trait_impls_annotations",
571+
"annotations::tests::method_annotations",
572+
// FIXME: const eval on hover not working, either shows infer `_` or unevaluated.
573+
"hover::tests::array_repeat_exp",
574+
"hover::tests::const_generic_negative_i8_literal",
575+
"hover::tests::hover_const_eval",
576+
"hover::tests::hover_const_eval_discriminant",
577+
"hover::tests::hover_const_eval_enum",
578+
"hover::tests::hover_const_eval_floating_point",
579+
"hover::tests::hover_const_static",
580+
"hover::tests::hover_const_pat",
581+
"hover::tests::hover_const_eval_slice",
582+
"hover::tests::hover_eval_complex_constants",
583+
"hover::tests::hover_unsigned_max_const",
584+
"hover::tests::i128_max",
585+
// FIXME: failed to const eval, formatting difference in const struct
586+
// (extra comma / reformatted?)
587+
"hover::tests::hover_const_eval_str",
588+
// FIXME: failed to const eval, extra path segment
589+
"hover::tests::hover_const_value",
590+
"hover::tests::hover_dollar_crate",
591+
"hover::tests::hover_dollar_crate stdout",
592+
// FIXME: failed to const eval, shows explicit `i32` on literal
593+
"hover::tests::hover_const_eval_dyn_trait",
594+
// FIXME: discriminant `= ?` problems
595+
"inlay_hints::discriminant::tests::datacarrying_mixed",
596+
"inlay_hints::discriminant::tests::fieldless",
597+
// FIXME: list order non-deterministic or different on `i686-mingw`?
598+
"runnables::tests::tests_are_unique",
599+
// FIXME: HTML element attribute order maybe non-deterministic or different on
600+
// `i686-mingw`?
601+
"syntax_highlighting::tests::test_rainbow_highlighting",
602+
// FIXME: enum discrim not evaluated?
603+
"handlers::explicit_enum_discriminant::tests::non_primitive_repr_non_data_bearing_add_discriminant",
604+
"tests::generated::doctest_explicit_enum_discriminant",
605+
// FIXME: import is different
606+
"handlers::add_explicit_type::tests::regression_issue_2922",
607+
"handlers::bool_to_enum::tests::field_enum_cross_file",
608+
// FIXME: assist no source changes
609+
"handlers::explicit_enum_discriminant::tests::primitive_repr_non_data_bearing_add_discriminant",
610+
// FIXME: code action not applicable
611+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_array",
612+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_recursive",
613+
"handlers::explicit_enum_discriminant::tests::primitive_repr_non_data_bearing_add_discriminant",
614+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_array",
615+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_recursive",
616+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_scalar_calculate_expr",
617+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_scalar_calculate_param_expr",
618+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_slice_single",
619+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_tuple",
620+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_const_block_eval_block_expr",
621+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_block_tuple_scalar_calculate_block_expr",
622+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_const_block_eval_expr",
623+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_const_block_expr",
624+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_const_expr",
625+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_const_fn_call_block_nested_builtin",
626+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_const_fn_call_builtin",
627+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_const_fn_call_tuple",
628+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_eval_const_block_expr_to_str_lit",
629+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_eval_const_if_expr_to_str_lit",
630+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_eval_const_call_expr_to_str_lit",
631+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_eval_const_block_macro_expr_to_str_lit",
632+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_eval_const_macro_expr_to_str_lit",
633+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_eval_const_match_expr_to_str_lit",
634+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_expr_as_str_lit",
635+
"handlers::inline_const_as_literal::tests::inline_const_as_literal_scalar_operators",
636+
// FIXME: assist is not applicable
637+
"tests::generated::doctest_inline_const_as_literal",
638+
// FIXME: order of `ex fn` are different?
639+
"render::tests::score_fn_type_and_name_match",
640+
// FIXME: false negatives in diagnostic tests
641+
"handlers::type_mismatch::tests::evaluate_const_generics_in_types",
642+
"handlers::mutability_errors::tests::or_pattern",
643+
]
644+
} else if self.host == "x86_64-apple-darwin" {
645+
vec![
646+
// FIXME: missing `#[cfg(never)]` on struct generic param
647+
"item_tree::tests::generics_with_attributes",
648+
// FIXME: `{unknown}` in generic param position
649+
"hover::tests::generic_params_disabled_by_cfg",
650+
]
651+
} else {
652+
vec![]
653+
});
654+
655+
let skip_tests = skip_tests.iter().map(|name| format!("--skip={name}")).collect::<Vec<_>>();
656+
let skip_tests = skip_tests.iter().map(|s| s.as_str()).collect::<Vec<_>>();
657+
412658
run_cargo_test(
413659
cargo,
414-
&[
415-
// FIXME: may need a fix from https://github.com/rust-lang/rust-analyzer/pull/19124.
416-
"--skip=config::tests::cargo_target_dir_subdir",
417-
],
660+
skip_tests.as_slice(),
418661
&[],
419662
"rust-analyzer",
420663
"rust-analyzer",

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /