To manually test this, insert text via IME and observe the resulting debug messages.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


* * * First case: typing a new composition * * *
beforeinput(inputType = 'insertCompositionText', data = 'a', cancelable = false)
input(inputType = 'insertCompositionText', data = 'a', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = 'ab', cancelable = false)
input(inputType = 'insertCompositionText', data = 'ab', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = 'abc', cancelable = false)
input(inputType = 'insertCompositionText', data = 'abc', cancelable = false)
beforeinput(inputType = 'deleteCompositionText', data = 'null', cancelable = false)
input(inputType = 'deleteCompositionText', data = 'null', cancelable = false)
beforeinput(inputType = 'insertFromComposition', data = 'abc', cancelable = true)
input(inputType = 'insertFromComposition', data = 'abc', cancelable = false)
compositionend(data = 'abc')
* * * Second case: canceling a new composition * * *
beforeinput(inputType = 'insertCompositionText', data = 'a', cancelable = false)
input(inputType = 'insertCompositionText', data = 'a', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = 'ab', cancelable = false)
input(inputType = 'insertCompositionText', data = 'ab', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = ' ', cancelable = false)
input(inputType = 'insertCompositionText', data = ' ', cancelable = false)
beforeinput(inputType = 'deleteCompositionText', data = 'null', cancelable = false)
input(inputType = 'deleteCompositionText', data = 'null', cancelable = false)
compositionend(data = '')
* * * Third case: replacing a composition * * *
beforeinput(inputType = 'insertCompositionText', data = 'a', cancelable = false)
input(inputType = 'insertCompositionText', data = 'a', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = 'ab', cancelable = false)
input(inputType = 'insertCompositionText', data = 'ab', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = 'cde', cancelable = false)
input(inputType = 'insertCompositionText', data = 'cde', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = 'fg', cancelable = false)
input(inputType = 'insertCompositionText', data = 'fg', cancelable = false)
beforeinput(inputType = 'deleteCompositionText', data = 'null', cancelable = false)
input(inputType = 'deleteCompositionText', data = 'null', cancelable = false)
beforeinput(inputType = 'insertFromComposition', data = 'fg', cancelable = true)
input(inputType = 'insertFromComposition', data = 'fg', cancelable = false)
compositionend(data = 'fg')
* * * Fourth case: partially committing a composition * * *
beforeinput(inputType = 'insertCompositionText', data = 'a', cancelable = false)
input(inputType = 'insertCompositionText', data = 'a', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = 'aa', cancelable = false)
input(inputType = 'insertCompositionText', data = 'aa', cancelable = false)
beforeinput(inputType = 'insertCompositionText', data = 'aaa', cancelable = false)
input(inputType = 'insertCompositionText', data = 'aaa', cancelable = false)
beforeinput(inputType = 'deleteCompositionText', data = 'null', cancelable = false)
input(inputType = 'deleteCompositionText', data = 'null', cancelable = false)
beforeinput(inputType = 'insertFromComposition', data = 'a', cancelable = true)
input(inputType = 'insertFromComposition', data = 'a', cancelable = false)
compositionend(data = 'a')
beforeinput(inputType = 'insertCompositionText', data = 'aa', cancelable = false)
input(inputType = 'insertCompositionText', data = 'aa', cancelable = false)
PASS successfullyParsed is true

TEST COMPLETE

