()
| 1134 | |
| 1135 | #[test] |
| 1136 | fn foreach_value_variable() { |
| 1137 | let content = r#"<?php |
| 1138 | $items = [1, 2, 3]; |
| 1139 | foreach ($items as $item) { |
| 1140 | echo $item; |
| 1141 | } |
| 1142 | "#; |
| 1143 | // Cursor on $item in the echo (line 3, char 10). |
| 1144 | let results = selection_ranges(content, &[Position::new(3, 10)]); |
| 1145 | assert_eq!(results.len(), 1); |
| 1146 | let ranges = flatten(&results[0]); |
| 1147 | // $item → echo stmt → foreach body stmt → foreach → file |
| 1148 | assert!( |
| 1149 | ranges.len() >= 3, |
| 1150 | "Expected at least 3 levels for foreach value, got {}", |
| 1151 | ranges.len() |
| 1152 | ); |
| 1153 | assert_nested(&ranges); |
| 1154 | } |
| 1155 | |
| 1156 | #[test] |
| 1157 | fn foreach_key_value() { |
nothing calls this directly
no test coverage detected