mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-13 08:36:54 +00:00
e087044658
The nine *_missing_from_policy_conditions tests in multipart_auth_test.rs were literal-for-literal identical after normalization: policy pins bucket + key + content-length-range, the form smuggles one extra field the policy never declared, and the upload must be rejected with 403 AccessDenied naming the field. Each one started its own full server. This adds the run_post_object_policy_case helper (parameterized by bucket, key, policy conditions, extra form fields, file body, and expected status/code/mention, with a per-case assertion prefix) and folds the nine tests into one table-driven test with nine rows. Every row keeps its original test's exact bucket, key, field name/value, body bytes, and expected error strings — including the two rows that asserted the stronger <Code>AccessDenied</Code> form — so no poison value is lost. The helper's signature is general enough for the policy_mismatch and sse-kms groups planned as PR2/PR3. cargo nextest list now reports 103 tests for this module; the inventory row said 109 while the file actually held 111 before this change (stale by two), so the inventory is set to the measured 103 in the same diff per the issue's hard constraint. Ref rustfs/backlog#1838 (PR1).
93 lines
3.9 KiB
Markdown
93 lines
3.9 KiB
Markdown
# e2e_test suite inventory
|
|
|
|
> Authoritative per-module test counts for the `e2e_test` crate (backlog#1149
|
|
> ci-4), generated from `cargo nextest list -p e2e_test`. Regenerate with:
|
|
> ```bash
|
|
> cargo nextest list -p e2e_test --message-format json | jq -r '.["rust-suites"][]?.testcases | to_entries[] | select(.value.ignored == false) | .key | split("::")[0]' | sort | uniq -c
|
|
> ```
|
|
> Modules marked ✅ are in the PR smoke profile `e2e-smoke`
|
|
> (`.config/nextest.toml`); admission criteria: `crates/e2e_test/README.md`.
|
|
> 🌙 marks tests in the scheduled `e2e-repl-nightly` profile (backlog#1147
|
|
> repl-1): `replication_extension_test` splits 20 fast tests into the PR smoke
|
|
> lane and 28 slow / `_real_dual_node` / `_real_three_node` / `_real_single_node` tests into the
|
|
> nightly lane (`.github/workflows/e2e-replication-nightly.yml`).
|
|
> Note: counts exclude `#[ignore]`d tests (nextest lists them separately).
|
|
> Managed-SSE (SSE-S3/SSE-KMS) replication contracts assert successful
|
|
> re-encryption on the target (backlog#1783); SSE-C replication still pins a
|
|
> fail-closed FAILED contract until ciphertext passthrough lands.
|
|
|
|
| module | tests | PR smoke |
|
|
|---|---|---|
|
|
| admin_auth_test | 4 | ✅ |
|
|
| admin_iam_crud_test | 2 | ✅ |
|
|
| admin_pools_test | 1 | ✅ |
|
|
| admin_timeout_regression_test | 1 | |
|
|
| anonymous_access_test | 4 | ✅ |
|
|
| api_rate_limit_test | 3 | |
|
|
| archive_download_integrity_test | 13 | |
|
|
| bucket_logging_test | 3 | |
|
|
| bucket_policy_check_test | 1 | ✅ |
|
|
| checksum_upload_test | 7 | |
|
|
| cluster_concurrency_test | 2 | |
|
|
| cluster_multidrive_pool_test | 2 | |
|
|
| common | 12 | |
|
|
| compression_test | 1 | |
|
|
| connection_cap_test | 2 | |
|
|
| console_smoke_test | 1 | ✅ |
|
|
| content_encoding_test | 3 | ✅ |
|
|
| copy_object_checksum_test | 7 | |
|
|
| copy_object_metadata_test | 4 | ✅ |
|
|
| copy_object_tagging_test | 2 | ✅ |
|
|
| copy_object_version_restore_test | 2 | |
|
|
| copy_source_invalid_date_test | 1 | ✅ |
|
|
| create_bucket_region_test | 2 | ✅ |
|
|
| degraded_read_eof_regression_test | 3 | |
|
|
| delete_marker_migration_semantics_test | 2 | ✅ |
|
|
| delete_object_no_content_length_test | 1 | |
|
|
| delete_objects_versioning_test | 2 | ✅ |
|
|
| existing_object_tag_policy_test | 4 | |
|
|
| fake_s3_target | 4 | ✅ |
|
|
| fault_proxy | 7 | |
|
|
| get_codec_streaming_compat_test | 1 | |
|
|
| head_object_consistency_test | 1 | ✅ |
|
|
| head_object_range_test | 1 | ✅ |
|
|
| heal_erasure_disk_rebuild_test | 3 | |
|
|
| inline_fast_path_cluster_test | 14 | |
|
|
| internode_rpc_signature_e2e_test | 5 | |
|
|
| kms | 41 | |
|
|
| leading_slash_key_test | 2 | ✅ |
|
|
| list_buckets_double_slash_test | 3 | ✅ |
|
|
| list_object_versions_metadata_extension_test | 1 | |
|
|
| list_object_versions_regression_test | 2 | ✅ |
|
|
| list_objects_duplicates_test | 3 | ✅ |
|
|
| list_objects_v2_metadata_extension_test | 1 | |
|
|
| list_objects_v2_pagination_test | 12 | ✅ |
|
|
| mc_mirror_small_bucket_test | 1 | |
|
|
| multipart_auth_test | 103 | |
|
|
| multipart_storage_class_test | 3 | ✅ |
|
|
| namespace_lock_quorum_test | 2 | |
|
|
| negative_sigv4_test | 6 | ✅ |
|
|
| notification_webhook_test | 3 | ✅ |
|
|
| object_lambda_test | 16 | |
|
|
| object_lock | 33 | |
|
|
| overwrite_cleanup_regression_test | 1 | |
|
|
| presigned_negative_test | 7 | ✅ |
|
|
| protocols | 16 | |
|
|
| quota_test | 14 | |
|
|
| reliability_disk_fault_test | 3 | |
|
|
| reliant | 24 | 18 ✅ |
|
|
| replication_extension_test | 50 | 20 ✅ +30 🌙 |
|
|
| security_boundary_test | 4 | |
|
|
| ssec_copy_test | 2 | ✅ |
|
|
| server_startup_failfast_test | 1 | |
|
|
| snowball_auto_extract_test | 6 | |
|
|
| special_chars_test | 14 | ✅ |
|
|
| stale_multipart_cleanup_cluster_test | 1 | |
|
|
| storage_class_capability_test | 4 | ✅ |
|
|
| sts_query_compat_test | 3 | ✅ |
|
|
| tls_gen | 3 | |
|
|
| tls_hot_reload_test | 1 | ✅ |
|
|
| version_id_regression_test | 10 | ✅ |
|
|
|
|
**Total listed: 530 tests across 70 modules · PR smoke subset: 148 tests / 33 modules** (31 full modules + 18 `reliant` tests + 20 of `replication_extension_test`) **· nightly `e2e-repl-nightly`: 30 tests** · updated 2026-08-09.
|