ai.enable_ai_analysis: true and configure
ai.provider and ai.api_key in pytest_html_dashboard.yaml for enhanced AI insights.
Error Type: AssertionError
Message: landing-token 401: '{"error":"__UNAUTHORIZED__"}'
assert False
+ where False =
💡 Suggested Action: Review error message and stack trace, check logs for additional context
| S.No | Test Case | Start Time | End Time | Duration | Result | Error Category | Result Details | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | tests/flows/test_calculator_scenarios.py::test_only_last_mile | 00:19:44 | 00:19:44 | 5.699s | SKIPPED | N/A | |||||||||
| 2 | tests/flows/test_calculator_scenarios.py::test_only_highway | 00:19:44 | 00:19:44 | 0.001s | SKIPPED | N/A | |||||||||
| 3 | tests/flows/test_calculator_scenarios.py::test_intracity | 00:19:44 | 00:19:44 | 0.001s | SKIPPED | N/A | |||||||||
| 4 | tests/flows/test_calculator_scenarios.py::test_first_mile_with_highway | 00:19:44 | 00:19:44 | 0.001s | SKIPPED | N/A | |||||||||
| 5 | tests/flows/test_calculator_scenarios.py::test_highway_with_last_mile | 00:19:44 | 00:19:44 | 0.001s | SKIPPED | N/A | |||||||||
| 6 | tests/flows/test_calculator_scenarios.py::test_intercity_door_to_door_over_300km | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 7 | tests/flows/test_calculator_scenarios.py::test_intercity_door_to_door_reverse_spb_to_moscow | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 8 | tests/flows/test_calculator_scenarios.py::test_ftl_moscow_to_spb_oneway | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 9 | tests/flows/test_calculator_scenarios.py::test_ftl_moscow_to_spb_roundtrip | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 10 | tests/flows/test_calculator_scenarios.py::test_only_first_mile | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 11 | tests/flows/test_calculator_scenarios.py::test_tariff_uses_volume_weight_when_it_exceeds_actual | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 12 | tests/flows/test_user_flow.py::test_check_invalid_token | 00:19:44 | 00:19:44 | 0.015s | PASSED | N/A | |||||||||
| 13 | tests/flows/test_warehouse_handling_flow.py::test_warehouse_handling_not_copied_across_freights | 00:19:44 | 00:19:44 | 5.654s | SKIPPED | N/A | |||||||||
| 14 | tests/flows/test_warehouse_handling_flow.py::test_each_warehouse_has_its_own_handling | 00:19:44 | 00:19:44 | 0.001s | SKIPPED | N/A | |||||||||
| 15 | tests/integration/test_api_rust_proxy_live.py::test_search_cities_live | 00:19:44 | 00:19:44 | 5.753s | SKIPPED | N/A | |||||||||
| 16 | tests/integration/test_api_rust_proxy_live.py::test_search_freights_live | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 17 | tests/integration/test_api_rust_proxy_live.py::test_get_city_live | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 18 | tests/integration/test_api_rust_proxy_live.py::test_get_order_live | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 19 | tests/integration/test_api_rust_proxy_live.py::test_get_trips_many_live | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 20 | tests/integration/test_api_rust_proxy_live.py::test_landing_token_live | 00:19:44 | 00:19:44 | 0.022s | FAILED | UNKNOWN |
🚫 Error Details
Stack Trace:NoneType: None |
||||||||
| 21 | tests/integration/test_api_rust_proxy_live.py::test_incidents_list_live | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 22 | tests/integration/test_api_rust_proxy_live.py::test_vrt_health_live | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 23 | tests/integration/test_order_full_flow.py::test_order_full_flow_with_attributes | 00:19:44 | 00:19:44 | 5.305s | SKIPPED | N/A | |||||||||
| 24 | tests/integration/test_planner_discount_live.py::test_service_discount_recalculates_calculation | 00:19:44 | 00:19:44 | 0.056s | SKIPPED | N/A | |||||||||
| 25 | tests/integration/test_planner_discount_live.py::test_zero_discount_target_not_found_is_404 | 00:19:44 | 00:19:44 | 0.030s | SKIPPED | N/A | |||||||||
| 26 | tests/integration/test_schedule_overlap_live.py::test_schedule_overlap_two_trips | 00:19:44 | 00:19:44 | 5.758s | SKIPPED | N/A | |||||||||
| 27 | tests/integration/test_vrt_goap_live.py::test_vrt_goap_plan_self_contained | 00:19:44 | 00:19:44 | 5.073s | SKIPPED | N/A | |||||||||
| 28 | tests/integration/test_works_live.py::test_works_save_and_by_owner | 00:19:44 | 00:19:44 | 4.873s | SKIPPED | N/A | |||||||||
| 29 | tests/integration/test_works_live.py::test_works_save_replaces_not_appends | 00:19:44 | 00:19:44 | 0.001s | SKIPPED | N/A | |||||||||
| 30 | tests/integration/test_works_live.py::test_by_owner_unknown_owner_empty | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 31 | tests/integration/test_works_live.py::test_work_state_set_get_and_idempotent | 00:19:44 | 00:19:44 | 0.000s | SKIPPED | N/A | |||||||||
| 32 | tests/integration/test_wpt_process_live.py::test_wpt_pdf_create_quotes_live | 00:19:44 | 00:19:44 | 5.237s | SKIPPED | N/A | |||||||||
| 33 | tests/integration/test_wpt_process_live.py::test_wpt_generate_documents_trip_live | 00:19:44 | 00:19:44 | 0.001s | SKIPPED | N/A | |||||||||
| 34 | tests/trades/test_01_trades_smoke.py::TestRouteTariff::test_get_all_returns_list | 00:19:44 | 00:19:44 | 0.026s | PASSED | N/A | |||||||||
| 35 | tests/trades/test_01_trades_smoke.py::TestRouteTariff::test_not_found | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 36 | tests/trades/test_01_trades_smoke.py::TestRouteTariff::test_delete_idempotent | 00:19:44 | 00:19:44 | 0.005s | PASSED | N/A | |||||||||
| 37 | tests/trades/test_01_trades_smoke.py::TestCommissionPolicy::test_get_all_returns_list | 00:19:44 | 00:19:44 | 0.007s | PASSED | N/A | |||||||||
| 38 | tests/trades/test_01_trades_smoke.py::TestCommissionPolicy::test_not_found | 00:19:44 | 00:19:44 | 0.004s | PASSED | N/A | |||||||||
| 39 | tests/trades/test_01_trades_smoke.py::TestCommissionPolicy::test_delete_idempotent | 00:19:44 | 00:19:44 | 0.004s | PASSED | N/A | |||||||||
| 40 | tests/trades/test_01_trades_smoke.py::TestTransportRequest::test_get_all_returns_list | 00:19:44 | 00:19:44 | 0.004s | PASSED | N/A | |||||||||
| 41 | tests/trades/test_01_trades_smoke.py::TestTransportRequest::test_filter_by_status | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 42 | tests/trades/test_01_trades_smoke.py::TestTransportRequest::test_not_found | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 43 | tests/trades/test_01_trades_smoke.py::TestTransportRequest::test_delete_idempotent | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 44 | tests/trades/test_01_trades_smoke.py::TestLtlTripTemplate::test_get_all_returns_list | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 45 | tests/trades/test_01_trades_smoke.py::TestLtlTripTemplate::test_filter_active | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 46 | tests/trades/test_01_trades_smoke.py::TestLtlTripTemplate::test_not_found | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 47 | tests/trades/test_01_trades_smoke.py::TestLtlTripTemplate::test_delete_idempotent | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 48 | tests/trades/test_01_trades_smoke.py::TestAuctionTrip::test_get_all_returns_list | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 49 | tests/trades/test_01_trades_smoke.py::TestAuctionTrip::test_filter_by_status | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 50 | tests/trades/test_01_trades_smoke.py::TestAuctionTrip::test_not_found | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 51 | tests/trades/test_01_trades_smoke.py::TestAuctionTrip::test_delete_idempotent | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 52 | tests/trades/test_01_trades_smoke.py::TestAuction::test_get_all_returns_list | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 53 | tests/trades/test_01_trades_smoke.py::TestAuction::test_filter_by_status | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 54 | tests/trades/test_01_trades_smoke.py::TestAuction::test_not_found | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 55 | tests/trades/test_01_trades_smoke.py::TestAuction::test_delete_idempotent | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 56 | tests/trades/test_01_trades_smoke.py::TestAuction::test_delete_participant_idempotent | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 57 | tests/trades/test_01_trades_smoke.py::TestAuction::test_delete_bid_idempotent | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 58 | tests/trades/test_01_trades_smoke.py::TestOrdersTrips::test_get_orders_returns_list | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 59 | tests/trades/test_01_trades_smoke.py::TestOrdersTrips::test_get_trips_returns_list | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 60 | tests/trades/test_01_trades_smoke.py::TestOrdersTrips::test_order_not_found | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 61 | tests/trades/test_01_trades_smoke.py::TestOrdersTrips::test_trip_not_found | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 62 | tests/trades/test_01_trades_smoke.py::TestOrdersTrips::test_delete_order_idempotent | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 63 | tests/trades/test_01_trades_smoke.py::TestOrdersTrips::test_delete_trip_idempotent | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 64 | tests/trades/test_01_trades_smoke.py::TestInfra::test_goap_status | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 65 | tests/trades/test_01_trades_smoke.py::TestInfra::test_auction_scheduler_status | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 66 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_01_request_created | 00:19:44 | 00:19:44 | 0.000s | PASSED | N/A | |||||||||
| 67 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_02_auction_trip_auto_created | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 68 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_03_start_price_includes_commission | 00:19:44 | 00:19:44 | 0.000s | PASSED | N/A | |||||||||
| 69 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_04_auction_is_active | 00:19:44 | 00:19:44 | 0.000s | PASSED | N/A | |||||||||
| 70 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_05_bid_above_threshold_rejected | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 71 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_06_carrier1_places_valid_bid | 00:19:44 | 00:19:44 | 0.005s | PASSED | N/A | |||||||||
| 72 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_07_carrier2_outbids_carrier1 | 00:19:44 | 00:19:44 | 0.005s | PASSED | N/A | |||||||||
| 73 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_08_finish_auction | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 74 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_09_winner_and_loser_participants | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 75 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_10_execution_pipeline_creates_order | 00:19:44 | 00:19:44 | 0.007s | PASSED | N/A | |||||||||
| 76 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_11_execution_pipeline_creates_trip | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 77 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_12_order_linked_to_trip | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 78 | tests/trades/test_02_trades_scenario_ftl.py::TestFtlScenario::test_13_update_trip_status | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 79 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_01_ltl_trip_starts_filling | 00:19:44 | 00:19:44 | 0.002s | PASSED | N/A | |||||||||
| 80 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_02_fill_below_threshold[1-20] | 00:19:44 | 00:19:44 | 0.005s | PASSED | N/A | |||||||||
| 81 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_02_fill_below_threshold[2-40] | 00:19:44 | 00:19:44 | 0.004s | PASSED | N/A | |||||||||
| 82 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_02_fill_below_threshold[3-60] | 00:19:44 | 00:19:44 | 0.004s | PASSED | N/A | |||||||||
| 83 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_03_fourth_placement_triggers_ready | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 84 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_04_placement_rejected_when_not_filling | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 85 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_05_cannot_exceed_capacity | 00:19:44 | 00:19:44 | 0.005s | PASSED | N/A | |||||||||
| 86 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_06_open_auction | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 87 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_07_carrier1_bids | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 88 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_08_carrier2_wins | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 89 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_09_finish_auction | 00:19:44 | 00:19:44 | 0.003s | PASSED | N/A | |||||||||
| 90 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_10_participants_statuses | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 91 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_11_execution_creates_orders | 00:19:44 | 00:19:44 | 0.007s | PASSED | N/A | |||||||||
| 92 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_12_single_execution_trip | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A | |||||||||
| 93 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_13_orders_linked_to_trip | 00:19:44 | 00:19:44 | 0.004s | PASSED | N/A | |||||||||
| 94 | tests/trades/test_03_trades_scenario_ltl.py::TestLtlScenario::test_14_ltl_cargo_list_matches_requests | 00:19:44 | 00:19:44 | 0.001s | PASSED | N/A |
📋 Overview: This section provides comprehensive details for each individual test step across all test cases. Use the interactive features to explore step execution patterns and identify potential issues.
[TIP] Click headers to sort 🔍 Hover for tooltips 📊 Interactive charts