Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(core): build unit tests for handling of context() with nul and if() for Keyman Core #13303

Open
mcdurdin opened this issue Feb 21, 2025 · 1 comment · May be fixed by #13311
Open

chore(core): build unit tests for handling of context() with nul and if() for Keyman Core #13303

mcdurdin opened this issue Feb 21, 2025 · 1 comment · May be fixed by #13311
Assignees
Labels
chore core/ Keyman Core
Milestone

Comments

@mcdurdin
Copy link
Member

No description provided.

@mcdurdin mcdurdin changed the title Build corresponding unit tests for Keyman Core chore(developer): build unit tests for invalid context() statements for Keyman Core Feb 21, 2025
@mcdurdin mcdurdin changed the title chore(developer): build unit tests for invalid context() statements for Keyman Core chore(core): build unit tests for handling of context() with nul and if() for Keyman Core Feb 21, 2025
@keymanapp-test-bot keymanapp-test-bot bot added chore core/ Keyman Core labels Feb 21, 2025
@mcdurdin mcdurdin added this to the B18S2 milestone Feb 21, 2025
@mcdurdin mcdurdin moved this to In Progress in Keyman Feb 21, 2025
@mcdurdin mcdurdin self-assigned this Feb 21, 2025
@mcdurdin
Copy link
Member Author

mcdurdin commented Feb 21, 2025

Two keyboards cause test failure, with the results that I anticipated (see #13304). The code is fixed in the follow-up PR #13314

 63/104 keyman_core / k_050___nul_and_context                             FAIL            0.66s   (exit status 297 or signal 169 SIGinvalid)

>>> C:\Users\marc\AppData\Roaming\nvm\node.js\node.EXE D:\Projects\keyman\beta\core\build\wasm\debug\tests\unit\kmx\kmx.js D:/Projects/keyman/beta/core/build/wasm/debug/tests/unit/kmx/k_050___nul_and_context.kmn D:/Projects/keyman/beta/core/build/wasm/debug/tests/unit/kmx/k_050___nul_and_context.kmx
source file   = /nodefs-mount/D/Projects/keyman/beta/core/build/wasm/debug/tests/unit/kmx/k_050___nul_and_context.kmn
compiled file = /nodefs-mount/D/Projects/keyman/beta/core/build/wasm/debug/tests/unit/kmx/k_050___nul_and_context.kmx
action: emit keystroke
action: emit keystroke
expected        : U+0032 U+0074 U+0033  [2t3]
text store      : U+0032 U+0033  [23]
expected context: U+0032 U+0074 U+0033  [2t3]
context         : U+0032 U+0033  [23]

 64/104 keyman_core / k_051___if_and_context                              OK              0.65s
 65/104 keyman_core / k_052___nul_and_index                               FAIL            0.63s   (exit status 297 or signal 169 SIGinvalid)

>>> C:\Users\marc\AppData\Roaming\nvm\node.js\node.EXE D:\Projects\keyman\beta\core\build\wasm\debug\tests\unit\kmx\kmx.js D:/Projects/keyman/beta/core/build/wasm/debug/tests/unit/kmx/k_052___nul_and_index.kmn D:/Projects/keyman/beta/core/build/wasm/debug/tests/unit/kmx/k_052___nul_and_index.kmx
source file   = /nodefs-mount/D/Projects/keyman/beta/core/build/wasm/debug/tests/unit/kmx/k_052___nul_and_index.kmn
compiled file = /nodefs-mount/D/Projects/keyman/beta/core/build/wasm/debug/tests/unit/kmx/k_052___nul_and_index.kmx
action: emit keystroke
action: emit keystroke
expected        : U+0032 U+0054 U+0033  [2T3]
text store      : U+0032 U+004D U+0033  [2M3]
expected context: U+0032 U+0054 U+0033  [2T3]
context         : U+0032 U+004D U+0033  [2M3]

 66/104 keyman_core / k_053___if_and_index                                OK              0.62s

Summary of Failures:

 63/104 keyman_core / k_050___nul_and_context                    FAIL            0.66s   (exit status 297 or signal 169 SIGinvalid)
 65/104 keyman_core / k_052___nul_and_index                      FAIL            0.63s   (exit status 297 or signal 169 SIGinvalid)

mcdurdin added a commit that referenced this issue Feb 21, 2025
Add 4 test keyboards to validate `nul` and `if` used in conjunction with
`index` and `context` and corresponding references in core unit tests.

Add a script to rebuild baseline keyboards using a copy of kmcomp.exe
16.0.138; this is setup and tested only on Windows (YMMV on WINE, etc).

Add the 4 additional baseline test keyboards to kmcmplib unit tests for
build consistency between kmcomp 16 and kmcmplib 18 (all pass).

Note: two of the new Core tests currently fail. This is expected, see
issue #13304.

Fixes: #13303
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore core/ Keyman Core
Projects
Status: In Progress
Development

Successfully merging a pull request may close this issue.

1 participant