| from app.whatsapp.trip_selection import format_trip_card | |
| def test_format_trip_card(): | |
| trip = { | |
| "id": "trip-1", | |
| "departure": "صنعاء", | |
| "destination": "تعز", | |
| "departure_date": "2026-12-01", | |
| "departure_time": "noon", | |
| "available_seats": 3, | |
| "total_seats": 4, | |
| "price": 5000, | |
| "driver_cars": [{"car_type": "باص"}], | |
| "drivers": [{"name": "أحمد"}], | |
| "selection_count": 2, | |
| } | |
| card = format_trip_card(trip) | |
| assert "صنعاء" in card | |
| assert "تعز" in card | |
| assert "2026-12-01" in card | |
| assert "ظهرا" in card | |
| assert "3 من 4" in card | |
| assert "5000" in card | |
| assert "باص" in card | |
| assert "أحمد" in card | |
| assert "2" in card | |
| def test_format_trip_card_driver_message(): | |
| trip = { | |
| "id": "trip-1", | |
| "departure": "صنعاء", | |
| "destination": "تعز", | |
| "departure_date": "2026-12-01", | |
| "departure_time": "noon", | |
| "available_seats": 3, | |
| "total_seats": 4, | |
| "price": 5000, | |
| "driver_cars": [{"car_type": "باص"}], | |
| "drivers": [{"name": "أحمد"}], | |
| "use_driver_message": True, | |
| "driver_message": "باص من صنعاء الى تعز 😊😊😊", | |
| } | |
| card = format_trip_card(trip) | |
| assert card == "باص من صنعاء الى تعز 😊😊😊" | |
| assert "صنعاء ← إلى" not in card | |
| def test_format_trip_card_driver_message_flag_false(): | |
| trip = { | |
| "id": "trip-1", | |
| "departure": "صنعاء", | |
| "destination": "تعز", | |
| "departure_date": "2026-12-01", | |
| "departure_time": "noon", | |
| "available_seats": 3, | |
| "total_seats": 4, | |
| "price": 5000, | |
| "driver_cars": [{"car_type": "باص"}], | |
| "drivers": [{"name": "أحمد"}], | |
| "use_driver_message": False, | |
| "driver_message": "باص من صنعاء الى تعز 😊😊😊", | |
| } | |
| card = format_trip_card(trip) | |
| assert "صنعاء ← إلى" in card | |
| def test_format_trip_card_driver_message_empty(): | |
| trip = { | |
| "id": "trip-1", | |
| "departure": "صنعاء", | |
| "destination": "تعز", | |
| "departure_date": "2026-12-01", | |
| "departure_time": "noon", | |
| "available_seats": 3, | |
| "total_seats": 4, | |
| "price": 5000, | |
| "driver_cars": [{"car_type": "باص"}], | |
| "drivers": [{"name": "أحمد"}], | |
| "use_driver_message": True, | |
| "driver_message": "", | |
| } | |
| card = format_trip_card(trip) | |
| assert "صنعاء ← إلى" in card | |
| def test_format_trip_card_null_seats(): | |
| trip = { | |
| "id": "trip-1", | |
| "departure": "صنعاء", | |
| "destination": "تعز", | |
| "departure_date": "2026-12-01", | |
| "departure_time": "noon", | |
| "available_seats": None, | |
| "total_seats": None, | |
| "price": 5000, | |
| "driver_cars": [{"car_type": "باص"}], | |
| "drivers": [{"name": "أحمد"}], | |
| } | |
| card = format_trip_card(trip) | |
| assert "غير متوفرة" in card | |
| assert "المقاعد:" in card | |