()
| 732 | |
| 733 | #[tokio::test] |
| 734 | async fn test_load_many_duplicate_keys() { |
| 735 | use sea_orm::{entity::prelude::*, tests_cfg::*, DbBackend, LoaderTrait, MockDatabase}; |
| 736 | |
| 737 | let db = MockDatabase::new(DbBackend::Postgres) |
| 738 | .append_query_results([[ |
| 739 | fruit_model(1, Some(1)), |
| 740 | fruit_model(2, Some(1)), |
| 741 | fruit_model(3, Some(2)), |
| 742 | ]]) |
| 743 | .into_connection(); |
| 744 | |
| 745 | let cakes = vec![cake_model(1), cake_model(1), cake_model(2), cake_model(2)]; |
| 746 | |
| 747 | let fruits = cakes |
| 748 | .load_many(fruit::Entity::find(), &db) |
| 749 | .await |
| 750 | .expect("Should return something"); |
| 751 | |
| 752 | assert_eq!(fruits.len(), 4); |
| 753 | |
| 754 | let logs = db.into_transaction_log(); |
| 755 | let sql = format!("{:?}", logs[0]); |
| 756 | |
| 757 | let values_count = sql.matches("$1").count() + sql.matches("$2").count(); |
| 758 | assert_eq!(values_count, 2, "Duplicate values were not removed"); |
| 759 | } |
| 760 | } |
nothing calls this directly
no test coverage detected