@@ -200,6 +200,36 @@ public void DeleteCharOrExit()
200
200
Test ( "exit" , Keys ( "foo" , _ . Home , Enumerable . Repeat ( _ . Ctrl_d , 4 ) , InputAcceptedNow ) ) ;
201
201
}
202
202
203
+ [ SkippableFact ]
204
+ public void SelectAndDelete ( )
205
+ {
206
+ TestSetup ( KeyMode . Cmd ) ;
207
+
208
+ Test ( "abcde" , Keys (
209
+ "abcde" ,
210
+ CheckThat ( ( ) => AssertCursorLeftIs ( 5 ) ) ,
211
+ _ . Shift_LeftArrow , _ . Shift_LeftArrow , _ . Shift_LeftArrow ,
212
+ _ . Backspace ,
213
+ CheckThat ( ( ) => AssertLineIs ( "ab" ) ) ,
214
+ CheckThat ( ( ) => AssertCursorLeftIs ( 2 ) ) ,
215
+ _ . Ctrl_z ,
216
+ CheckThat ( ( ) => AssertLineIs ( "abcde" ) ) ,
217
+ CheckThat ( ( ) => AssertCursorLeftIs ( 5 ) ) ) ) ;
218
+
219
+ Test ( "abcde" , Keys (
220
+ "abcde" , _ . Home ,
221
+ CheckThat ( ( ) => AssertCursorLeftIs ( 0 ) ) ,
222
+ _ . RightArrow , _ . RightArrow ,
223
+ CheckThat ( ( ) => AssertCursorLeftIs ( 2 ) ) ,
224
+ _ . Shift_RightArrow , _ . Shift_RightArrow ,
225
+ _ . Delete ,
226
+ CheckThat ( ( ) => AssertLineIs ( "abe" ) ) ,
227
+ CheckThat ( ( ) => AssertCursorLeftIs ( 2 ) ) ,
228
+ _ . Ctrl_z ,
229
+ CheckThat ( ( ) => AssertLineIs ( "abcde" ) ) ,
230
+ CheckThat ( ( ) => AssertCursorLeftIs ( 4 ) ) ) ) ;
231
+ }
232
+
203
233
[ SkippableFact ]
204
234
public void SwapCharacters ( )
205
235
{
0 commit comments