Skip to content

Commit

Permalink
chore(common/web): Merge branch 'master' into test/common/web/types/9…
Browse files Browse the repository at this point in the history
…052-unit-tests-unicodeset-parser-api
  • Loading branch information
markcsinclair committed Nov 29, 2024
2 parents 3de4f99 + 80f0ec7 commit 1d0dddb
Show file tree
Hide file tree
Showing 22 changed files with 197 additions and 80 deletions.
12 changes: 12 additions & 0 deletions HISTORY.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
# Keyman Version History

## 18.0.147 alpha 2024-11-28

* docs(android): Add android/docs/internal/README (#12717)
* test(common/web/types): unit tests for string-list (#12702)
* docs(common): linux and macOS emscripten setup (#12701)
* refactor(developer): output number of tests when running on TC (#12710)
* refactor(common): output number of tests when running on TC (#12719)
* chore(web): rename file missed in #12704 (#12720)
* fix(core): permanently disable logging (#12724)
* fix(linux): disable assertions in release builds of ibus-keyman (#12725)
* chore(common): improve offline builds (#12739)

## 18.0.146 alpha 2024-11-27

* test(developer): kmcmplib compiler unit tests 5 (#12612)
Expand Down
2 changes: 1 addition & 1 deletion VERSION.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18.0.147
18.0.148
9 changes: 8 additions & 1 deletion common/web/types/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -80,13 +80,20 @@ function do_configure() {
}

function do_test() {
local MOCHA_FLAGS=

if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi

eslint .
tsc --build test

readonly C8_THRESHOLD=60

# Excludes are defined in .c8rc.json
c8 -skip-full --reporter=lcov --reporter=text --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha "${builder_extra_params[@]}"
c8 -skip-full --reporter=lcov --reporter=text --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha ${MOCHA_FLAGS} "${builder_extra_params[@]}"
builder_echo warning "Coverage thresholds are currently $C8_THRESHOLD%, which is lower than ideal."
builder_echo warning "Please increase threshold in build.sh as test coverage improves."
}
Expand Down
2 changes: 1 addition & 1 deletion core/src/kmx/kmx_processevent.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ using namespace kmx;
/* Globals */

KMX_BOOL km::core::kmx::g_debug_ToConsole = FALSE;
KMX_BOOL km::core::kmx::g_debug_KeymanLog = TRUE;
KMX_BOOL km::core::kmx::g_debug_KeymanLog = FALSE; // workaround for #12661
KMX_BOOL km::core::kmx::g_silent = FALSE;

/*
Expand Down
22 changes: 14 additions & 8 deletions developer/src/common/web/utils/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -46,18 +46,24 @@ function do_build() {
tsc --build
}

builder_run_action clean rm -rf ./build/
builder_run_action configure verify_npm_setup
builder_run_action build do_build
function do_test() {
local MOCHA_FLAGS=

if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi

if builder_start_action test; then
eslint .
tsc --build test
readonly C8_THRESHOLD=50
c8 --reporter=lcov --reporter=text --exclude-after-remap --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha
c8 --reporter=lcov --reporter=text --exclude-after-remap --check-coverage=false --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha ${MOCHA_FLAGS}
builder_echo warning "Coverage thresholds are currently $C8_THRESHOLD%, which is lower than ideal."
builder_echo warning "Please increase threshold in build.sh as test coverage improves."
builder_finish_action success test
fi
}

builder_run_action publish builder_publish_npm
builder_run_action clean rm -rf ./build/
builder_run_action configure verify_npm_setup
builder_run_action build do_build
builder_run_action test do_test
builder_run_action publish builder_publish_npm
9 changes: 8 additions & 1 deletion developer/src/kmc-analyze/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,19 @@ builder_parse "$@"
#-------------------------------------------------------------------------------------------------------------------

function do_test() {
local MOCHA_FLAGS=

if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi

eslint .
cd test
tsc --build
cd ..
readonly C8_THRESHOLD=70
c8 --reporter=lcov --reporter=text --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha
c8 --reporter=lcov --reporter=text --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha ${MOCHA_FLAGS}
}

builder_run_action clean rm -rf ./build/
Expand Down
9 changes: 8 additions & 1 deletion developer/src/kmc-copy/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,19 @@ builder_parse "$@"
do_test() {
# note: `export TEST_SAVE_ARTIFACTS=1` to save a copy of artifacts to temp path
# note: `export TEST_SAVE_FIXTURES=1` to get a copy of cloud-based fixtures saved to online/
local MOCHA_FLAGS=

if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi

eslint .
cd test
tsc --build
cd ..
readonly C8_THRESHOLD=70
c8 -skip-full --reporter=lcov --reporter=text --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha "${builder_extra_params[@]}"
c8 -skip-full --reporter=lcov --reporter=text --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha ${MOCHA_FLAGS} "${builder_extra_params[@]}"
builder_echo warning "Coverage thresholds are currently $C8_THRESHOLD%, which is lower than ideal."
builder_echo warning "Please increase threshold in build.sh as test coverage improves."
}
Expand Down
9 changes: 8 additions & 1 deletion developer/src/kmc-generate/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,18 @@ do_build() {
}

do_test() {
local MOCHA_FLAGS=

if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi

eslint .
cd test
tsc --build
cd ..
c8 --reporter=lcov --reporter=text mocha "${builder_extra_params[@]}"
c8 --reporter=lcov --reporter=text mocha ${MOCHA_FLAGS} "${builder_extra_params[@]}"
}

builder_run_action clean rm -rf ./build/ ./tsconfig.tsbuildinfo
Expand Down
23 changes: 14 additions & 9 deletions developer/src/kmc-keyboard-info/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,23 +32,28 @@ function do_configure() {
mkdir -p src/imports
echo 'export default ' > src/imports/langtags.js
cat "$KEYMAN_ROOT/resources/standards-data/langtags/langtags.json" >> src/imports/langtags.js
}

function do_test() {
local MOCHA_FLAGS=

if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi

eslint .
tsc --build test
c8 --reporter=lcov --reporter=text --exclude-after-remap --check-coverage=false mocha ${MOCHA_FLAGS}
}

#-------------------------------------------------------------------------------------------------------------------

builder_run_action clean rm -rf ./build/ ./tsconfig.tsbuildinfo
builder_run_action configure do_configure
builder_run_action build tsc --build
builder_run_action api api-extractor run --local --verbose

#-------------------------------------------------------------------------------------------------------------------

if builder_start_action test; then
eslint .
tsc --build test
c8 --reporter=lcov --reporter=text --exclude-after-remap mocha
builder_finish_action success test
fi
builder_run_action test do_test

#-------------------------------------------------------------------------------------------------------------------

Expand Down
22 changes: 13 additions & 9 deletions developer/src/kmc-kmn/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -56,27 +56,31 @@ function copy_deps() {
cp ../kmcmplib/build/wasm/$BUILDER_CONFIGURATION/src/wasm-host.wasm ./build/src/import/kmcmplib/wasm-host.wasm
}

if builder_start_action build; then
function do_build() {
copy_deps
tsc --build
builder_finish_action success build
fi
}

builder_run_action api api-extractor run --local --verbose
function do_test() {
local MOCHA_FLAGS=

#-------------------------------------------------------------------------------------------------------------------
if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi

if builder_start_action test; then
copy_deps
tsc --build test/
npm run lint
readonly C8_THRESHOLD=80
c8 --reporter=lcov --reporter=text --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha
c8 --reporter=lcov --reporter=text --lines $C8_THRESHOLD --statements $C8_THRESHOLD --branches $C8_THRESHOLD --functions $C8_THRESHOLD mocha ${MOCHA_FLAGS}
builder_echo warning "Coverage thresholds are currently $C8_THRESHOLD%, which is lower than ideal."
builder_echo warning "Please increase threshold in build.sh as test coverage improves."
}

builder_finish_action success test
fi
builder_run_action build do_build
builder_run_action api api-extractor run --local --verbose
builder_run_action test do_test

#-------------------------------------------------------------------------------------------------------------------

Expand Down
50 changes: 23 additions & 27 deletions developer/src/kmc-ldml/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,30 +33,19 @@ builder_describe_outputs \

builder_parse "$@"

#-------------------------------------------------------------------------------------------------------------------

if builder_start_action clean; then
function do_clean() {
rm -rf ./build/ ./tsconfig.tsbuildinfo
builder_finish_action success clean
fi
}

#-------------------------------------------------------------------------------------------------------------------

if builder_start_action configure; then
function do_configure() {
verify_npm_setup
builder_finish_action success configure
fi

#-------------------------------------------------------------------------------------------------------------------
}

if builder_start_action build; then
function do_build() {
npm run build
builder_finish_action success build
fi

#-------------------------------------------------------------------------------------------------------------------
}

if builder_start_action build-fixtures; then
function do_build_fixtures() {
# Build basic.kmx and emit its checksum
mkdir -p ./build/test/fixtures
node ../kmc build ./test/fixtures/basic.xml --no-compiler-version --debug --out-file ./build/test/fixtures/basic-xml.kmx
Expand All @@ -65,22 +54,29 @@ if builder_start_action build-fixtures; then

# Generate a binary file from basic.txt for comparison purposes
node ../../../common/tools/hextobin/build/hextobin.js ./test/fixtures/basic.txt ./build/test/fixtures/basic-txt.kmx
}

builder_finish_action success build-fixtures
fi
function do_test() {
local MOCHA_FLAGS=

builder_run_action api api-extractor run --local --verbose

#-------------------------------------------------------------------------------------------------------------------
if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi

if builder_start_action test; then
eslint .
cd test
tsc -b
cd ..
c8 --reporter=lcov --reporter=text mocha "${builder_extra_params[@]}"
builder_finish_action success test
fi
c8 --reporter=lcov --reporter=text mocha ${MOCHA_FLAGS} "${builder_extra_params[@]}"
}

builder_run_action clean do_clean
builder_run_action configure do_configure
builder_run_action build do_build
builder_run_action build-fixtures do_build_fixtures
builder_run_action api api-extractor run --local --verbose
builder_run_action test do_test

#-------------------------------------------------------------------------------------------------------------------

Expand Down
15 changes: 11 additions & 4 deletions developer/src/kmc-model-info/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,20 @@ builder_run_action api api-extractor run --local --verbose

#-------------------------------------------------------------------------------------------------------------------

if builder_start_action test; then
function do_test() {
local MOCHA_FLAGS=

if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi
eslint .
tsc --build test
c8 --reporter=lcov --reporter=text --exclude-after-remap --lines 80 mocha
c8 --reporter=lcov --reporter=text --exclude-after-remap --check-coverage=false --lines 80 mocha ${MOCHA_FLAGS}
# TODO: remove --lines 80 and improve coverage
builder_finish_action success test
fi
}

builder_run_action test do_test

#-------------------------------------------------------------------------------------------------------------------

Expand Down
16 changes: 15 additions & 1 deletion developer/src/kmc-model/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,24 @@ function do_build() {
npm run build
}

function do_test() {
local MOCHA_FLAGS=

if [[ "${TEAMCITY_GIT_PATH:-}" != "" ]]; then
# we're running in TeamCity
MOCHA_FLAGS="-reporter mocha-teamcity-reporter"
fi
npm run lint
cd test
tsc -b
cd ..
c8 --reporter=lcov --reporter=text mocha ${MOCHA_FLAGS}
}

builder_run_action clean rm -rf ./build/ ./tsconfig.tsbuildinfo
builder_run_action configure verify_npm_setup
builder_run_action build do_build
builder_run_action api api-extractor run --local --verbose
builder_run_action test npm test
builder_run_action test do_test
builder_run_action publish builder_publish_npm

2 changes: 1 addition & 1 deletion developer/src/kmc-model/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"scripts": {
"build": "tsc -b",
"lint": "eslint .",
"test": "npm run lint && cd test && tsc -b && cd .. && c8 --reporter=lcov --reporter=text mocha"
"test": "./build.sh test"
},
"author": "Marc Durdin <[email protected]> (https://github.com/mcdurdin)",
"contributors": [
Expand Down
Loading

0 comments on commit 1d0dddb

Please sign in to comment.