@@ -210,9 +210,15 @@ fn test_paste_expansion_on_submit() {
210210 assert_eq ! ( app. display_messages( ) . len( ) , 1 ) ;
211211 assert_eq ! ( app. display_messages( ) [ 0 ] . content, "A: [pasted 5 lines] B" ) ;
212212
213- // Model receives expanded content (actual pasted text)
214- assert_eq ! ( app. messages. len( ) , 1 ) ;
215- match & app. messages [ 0 ] . content [ 0 ] {
213+ // Model receives expanded content (actual pasted text). Local sessions keep the
214+ // provider message cache lazy, so inspect the materialized provider view.
215+ let provider_messages = app. materialized_provider_messages ( ) ;
216+ let user_message = provider_messages
217+ . iter ( )
218+ . rev ( )
219+ . find ( |message| message. role == Role :: User )
220+ . expect ( "expected submitted user message" ) ;
221+ match & user_message. content [ 0 ] {
216222 crate :: message:: ContentBlock :: Text { text, .. } => {
217223 assert_eq ! ( text, "A: 1\n 2\n 3\n 4\n 5 B" ) ;
218224 }
@@ -240,7 +246,13 @@ fn test_multiple_pastes() {
240246 app. submit_input ( ) ;
241247 // Display and model both get the same content (no expansion needed)
242248 assert_eq ! ( app. display_messages( ) [ 0 ] . content, "first second\n line" ) ;
243- match & app. messages [ 0 ] . content [ 0 ] {
249+ let provider_messages = app. materialized_provider_messages ( ) ;
250+ let user_message = provider_messages
251+ . iter ( )
252+ . rev ( )
253+ . find ( |message| message. role == Role :: User )
254+ . expect ( "expected submitted user message" ) ;
255+ match & user_message. content [ 0 ] {
244256 crate :: message:: ContentBlock :: Text { text, .. } => {
245257 assert_eq ! ( text, "first second\n line" ) ;
246258 }
0 commit comments