@@ -219,22 +219,19 @@ class InputBufferTests
219
219
}
220
220
}
221
221
222
- TEST_METHOD (InputBufferDoesNotCoalesceFullWidthChars )
222
+ TEST_METHOD (InputBufferDoesNotCoalesceSurrogatePairs )
223
223
{
224
224
InputBuffer inputBuffer;
225
- WCHAR hiraganaA = 0x3042 ; // U+3042 hiragana A
226
- auto record = MakeKeyEvent (true , 1 , hiraganaA, 0 , hiraganaA, 0 );
227
225
228
- // send a bunch of identical events
229
- inputBuffer.Flush ();
230
- for (size_t i = 0 ; i < RECORD_INSERT_COUNT; ++i)
231
- {
232
- VERIFY_IS_GREATER_THAN (inputBuffer.Write (record), 0u );
233
- VERIFY_ARE_EQUAL (inputBuffer._storage .back (), record);
234
- }
226
+ // U+1F44D thumbs up emoji
227
+ inputBuffer.Write (MakeKeyEvent (true , 1 , 0xD83D , 0 , 0xD83D , 0 ));
228
+ inputBuffer.Write (MakeKeyEvent (true , 1 , 0xDC4D , 0 , 0xDC4D , 0 ));
229
+
230
+ // Should not coalese despite otherwise matching perfectly.
231
+ inputBuffer.Write (MakeKeyEvent (true , 1 , 0xDC4D , 0 , 0xDC4D , 0 ));
235
232
236
233
// The events shouldn't be coalesced
237
- VERIFY_ARE_EQUAL (inputBuffer.GetNumberOfReadyEvents (), RECORD_INSERT_COUNT );
234
+ VERIFY_ARE_EQUAL (inputBuffer.GetNumberOfReadyEvents (), 3 );
238
235
}
239
236
240
237
TEST_METHOD (CanFlushAllOutput)
0 commit comments