Test files: 6. Test functions: 86. Described by their authors (docstring or @DisplayName): 0. Where there is no description, the line shows the test name in words and says so.
Latest result: ragleap-optimizer-tests (3.11) passed 156 passed, 0 skipped, 0 failed CI job ragleap-optimizer-tests (3.10) passed 156 passed, 0 skipped, 0 failed CI job ragleap-optimizer-tests (3.12) passed 156 passed, 0 skipped, 0 failed CI job
test_cache.py — 18 tests 18 passed, 0 failed, 0 skipped
No file-level description in the source.
test_hit_for_same_scope_and_same_requestpassed
Hit for same scope and same request (no description in the source; shown from the name)test_no_hit_across_scopes_even_for_a_narrower_scope_of_the_same_tenantpassed
No hit across scopes even for a narrower scope of the same tenant (no description in the source; shown from the name)test_anything_that_can_change_the_answer_is_part_of_the_keypassed
Anything that can change the answer is part of the key (no description in the source; shown from the name)test_key_ignores_dict_key_orderpassed
Key ignores dict key order (no description in the source; shown from the name)test_values_are_copied_in_and_outpassed
Values are copied in and out (no description in the source; shown from the name)test_none_is_a_valid_cached_valuepassed
None is a valid cached value (no description in the source; shown from the name)test_entries_expire_at_the_ttlpassed
Entries expire at the ttl (no description in the source; shown from the name)test_putting_again_refreshes_the_ttl_and_keeps_one_entrypassed
Putting again refreshes the ttl and keeps one entry (no description in the source; shown from the name)test_least_recently_used_goes_firstpassed
Least recently used goes first (no description in the source; shown from the name)test_erase_removes_only_that_scopepassed
Erase removes only that scope (no description in the source; shown from the name)test_erase_after_eviction_and_expiry_stays_consistentpassed
Erase after eviction and expiry stays consistent (no description in the source; shown from the name)test_counterspassed
Counters (no description in the source; shown from the name)test_a_real_scope_is_requiredpassed
A real scope is required (no description in the source; shown from the name)test_a_request_that_is_not_json_is_refusedpassed
A request that is not json is refused (no description in the source; shown from the name)test_bad_ttl_is_refusedpassed
Bad ttl is refused (no description in the source; shown from the name)test_bad_max_entries_is_refusedpassed
Bad max entries is refused (no description in the source; shown from the name)test_threads_do_not_break_it_or_exceed_the_cappassed
Threads do not break it or exceed the cap (no description in the source; shown from the name)test_putting_an_entry_again_makes_it_the_most_recentpassed
Putting an entry again makes it the most recent (no description in the source; shown from the name)
test_evaluate.py — 14 tests 14 passed, 0 failed, 0 skipped
No file-level description in the source.
test_numbers_match_a_hand_computationpassed
Numbers match a hand computation (no description in the source; shown from the name)test_a_summary_with_enough_cases_shows_the_savings_and_the_intervalpassed
A summary with enough cases shows the savings and the interval (no description in the source; shown from the name)test_too_few_cases_gives_no_figurespassed
Too few cases gives no figures (no description in the source; shown from the name)test_no_cases_at_allpassed
No cases at all (no description in the source; shown from the name)test_regressions_are_listed_by_case_indexpassed
Regressions are listed by case index (no description in the source; shown from the name)test_improvements_are_not_regressionspassed
Improvements are not regressions (no description in the source; shown from the name)test_failures_are_counted_named_and_left_outpassed
Failures are counted named and left out (no description in the source; shown from the name)test_a_bad_judge_result_counts_as_a_failurepassed
A bad judge result counts as a failure (no description in the source; shown from the name)test_a_judge_may_return_numbers_between_zero_and_onepassed
A judge may return numbers between zero and one (no description in the source; shown from the name)test_lossy_cases_are_countedpassed
Lossy cases are counted (no description in the source; shown from the name)test_the_interval_is_repeatable_for_a_seed_and_brackets_the_differencepassed
The interval is repeatable for a seed and brackets the difference (no description in the source; shown from the name)test_an_invalid_request_in_a_case_is_a_failure_not_a_crashpassed
An invalid request in a case is a failure not a crash (no description in the source; shown from the name)test_bad_arguments_are_refusedpassed
Bad arguments are refused (no description in the source; shown from the name)test_the_bootstrap_really_uses_the_given_seedpassed
The bootstrap really uses the given seed (no description in the source; shown from the name)
test_model.py — 3 tests 3 passed, 0 failed, 0 skipped
No file-level description in the source.
test_estimate_valuespassed
Estimate values (no description in the source; shown from the name)test_content_text_for_strings_lists_and_other_valuespassed
Content text for strings lists and other values (no description in the source; shown from the name)test_count_request_counts_roles_messages_tools_and_systempassed
Count request counts roles messages tools and system (no description in the source; shown from the name)
test_optimizer.py — 14 tests 14 passed, 0 failed, 0 skipped
No file-level description in the source.
test_report_counts_match_the_counter_and_the_request_is_not_changedpassed
Report counts match the counter and the request is not changed (no description in the source; shown from the name)test_steps_run_in_order_and_each_reports_its_own_tokenspassed
Steps run in order and each reports its own tokens (no description in the source; shown from the name)test_lossy_is_true_only_when_a_lossy_step_really_changed_somethingpassed
Lossy is true only when a lossy step really changed something (no description in the source; shown from the name)test_a_step_that_claims_lossy_but_changes_nothing_is_not_reported_lossypassed
A step that claims lossy but changes nothing is not reported lossy (no description in the source; shown from the name)test_a_step_that_makes_the_request_longer_is_discarded_and_reportedpassed
A step that makes the request longer is discarded and reported (no description in the source; shown from the name)test_a_lossless_pipeline_never_makes_a_request_longerpassed
A lossless pipeline never makes a request longer (no description in the source; shown from the name)test_custom_counter_is_usedpassed
Custom counter is used (no description in the source; shown from the name)test_a_bad_counter_result_is_refusedpassed
A bad counter result is refused (no description in the source; shown from the name)test_bad_steps_and_options_are_refusedpassed
Bad steps and options are refused (no description in the source; shown from the name)test_bad_requests_are_refusedpassed
Bad requests are refused (no description in the source; shown from the name)test_size_and_message_limitspassed
Size and message limits (no description in the source; shown from the name)test_audit_needs_a_scope_and_records_counts_not_textpassed
Audit needs a scope and records counts not text (no description in the source; shown from the name)test_no_audit_means_no_scope_neededpassed
No audit means no scope needed (no description in the source; shown from the name)test_a_step_that_changes_its_input_in_place_cannot_change_the_callers_requestpassed
A step that changes its input in place cannot change the callers request (no description in the source; shown from the name)
test_resilience.py — 14 tests 14 passed, 0 failed, 0 skipped
No file-level description in the source.
test_retry_succeeds_after_failures_with_doubling_capped_delayspassed
Retry succeeds after failures with doubling capped delays (no description in the source; shown from the name)test_retry_raises_the_last_error_when_attempts_run_outpassed
Retry raises the last error when attempts run out (no description in the source; shown from the name)test_a_single_attempt_is_called_once_and_never_sleepspassed
A single attempt is called once and never sleeps (no description in the source; shown from the name)test_errors_not_in_retry_on_are_raised_at_oncepassed
Errors not in retry on are raised at once (no description in the source; shown from the name)test_keyboard_interrupt_is_never_retriedpassed
Keyboard interrupt is never retried (no description in the source; shown from the name)test_the_deadline_stops_retrying_before_waiting_past_itpassed
The deadline stops retrying before waiting past it (no description in the source; shown from the name)test_exactly_at_the_deadline_is_allowedpassed
Exactly at the deadline is allowed (no description in the source; shown from the name)test_bad_retry_arguments_are_refusedpassed
Bad retry arguments are refused (no description in the source; shown from the name)test_fallback_returns_the_first_success_and_passes_argumentspassed
Fallback returns the first success and passes arguments (no description in the source; shown from the name)test_fallback_stops_at_the_first_successpassed
Fallback stops at the first success (no description in the source; shown from the name)test_all_failed_keeps_the_causes_in_order_and_hides_their_textpassed
All failed keeps the causes in order and hides their text (no description in the source; shown from the name)test_fallback_raises_errors_outside_retry_on_without_trying_the_nextpassed
Fallback raises errors outside retry on without trying the next (no description in the source; shown from the name)test_fallback_needs_callablespassed
Fallback needs callables (no description in the source; shown from the name)test_fallback_validates_retry_onpassed
Fallback validates retry on (no description in the source; shown from the name)
test_steps.py — 23 tests 23 passed, 0 failed, 0 skipped
No file-level description in the source.
test_dedupe_removes_earlier_copies_and_keeps_the_lastpassed
Dedupe removes earlier copies and keeps the last (no description in the source; shown from the name)test_dedupe_never_touches_system_or_short_messagespassed
Dedupe never touches system or short messages (no description in the source; shown from the name)test_dedupe_keeps_same_text_with_a_different_rolepassed
Dedupe keeps same text with a different role (no description in the source; shown from the name)test_dedupe_handles_list_content_and_min_charspassed
Dedupe handles list content and min chars (no description in the source; shown from the name)test_dedupe_does_not_change_its_inputpassed
Dedupe does not change its input (no description in the source; shown from the name)test_dedupe_rejects_bad_min_charspassed
Dedupe rejects bad min chars (no description in the source; shown from the name)test_trim_keeps_start_and_end_marks_the_cut_and_is_lossypassed
Trim keeps start and end marks the cut and is lossy (no description in the source; shown from the name)test_trim_marker_counts_the_omitted_characterspassed
Trim marker counts the omitted characters (no description in the source; shown from the name)test_trim_leaves_short_content_and_other_roles_alonepassed
Trim leaves short content and other roles alone (no description in the source; shown from the name)test_trim_does_not_touch_non_string_contentpassed
Trim does not touch non string content (no description in the source; shown from the name)test_trim_skips_when_the_marker_would_cost_more_than_it_savespassed
Trim skips when the marker would cost more than it saves (no description in the source; shown from the name)test_trim_without_tailpassed
Trim without tail (no description in the source; shown from the name)test_trim_rejects_bad_max_tokenspassed
Trim rejects bad max tokens (no description in the source; shown from the name)test_trim_rejects_bad_tail_fractionpassed
Trim rejects bad tail fraction (no description in the source; shown from the name)test_minify_collapses_blank_lines_only_from_three_newlinespassed
Minify collapses blank lines only from three newlines (no description in the source; shown from the name)test_minify_writes_json_compactly_without_changing_the_datapassed
Minify writes json compactly without changing the data (no description in the source; shown from the name)test_minify_leaves_non_json_that_looks_like_jsonpassed
Minify leaves non json that looks like json (no description in the source; shown from the name)test_minify_ignores_list_contentpassed
Minify ignores list content (no description in the source; shown from the name)test_stable_prefix_moves_system_messages_first_and_keeps_other_orderpassed
Stable prefix moves system messages first and keeps other order (no description in the source; shown from the name)test_stable_prefix_makes_tool_json_independent_of_key_orderpassed
Stable prefix makes tool json independent of key order (no description in the source; shown from the name)test_stable_prefix_tool_order_only_changes_when_askedpassed
Stable prefix tool order only changes when asked (no description in the source; shown from the name)test_stable_prefix_without_tools_is_finepassed
Stable prefix without tools is fine (no description in the source; shown from the name)test_trim_acts_above_the_cap_and_not_at_itpassed
Trim acts above the cap and not at it (no description in the source; shown from the name)