| 460 | #[cfg(test)] |
| 461 | impl<K: Eq + Hash + Clone + PartialEq, V: Clone + PartialEq> PartialEq for TSHashTable<K, V> { |
| 462 | fn eq(&self, other: &Self) -> bool { |
| 463 | let self_list = self.to_list(); |
| 464 | let other_list = other.to_list(); |
| 465 | |
| 466 | for (k, v) in &self_list { |
| 467 | let Some((_, v2)) = other_list.iter().find(|(k2, _)| k2 == k) else { |
| 468 | return false; |
| 469 | }; |
| 470 | if v != v2 { |
| 471 | return false; |
| 472 | } |
| 473 | } |
| 474 | |
| 475 | for (k, v) in &other_list { |
| 476 | let Some((_, v2)) = self_list.iter().find(|(k2, _)| k2 == k) else { |
| 477 | return false; |
| 478 | }; |
| 479 | if v != v2 { |
| 480 | return false; |
| 481 | } |
| 482 | } |
| 483 | |
| 484 | true |
| 485 | } |
| 486 | } |
| 487 | |
| 488 | #[cfg(test)] |