summaryrefslogtreecommitdiff
path: root/test/hangul.c
diff options
context:
space:
mode:
authorChoe Hwanjin <choe.hwanjin@gmail.com>2021-09-19 10:48:44 +0900
committerChoe Hwanjin <choe.hwanjin@gmail.com>2021-09-19 12:12:50 +0900
commit4c1efe85ab9ddb5f6ea3e69bdf24e9373d5c402a (patch)
tree6b63d7a38b59f671a2f725f96bd64e16694034b8 /test/hangul.c
parentcf218777a2019753462084a5ceec7ca0457b9f65 (diff)
downloadlibhangul-4c1efe85ab9ddb5f6ea3e69bdf24e9373d5c402a.tar.gz
Add LIBHANGUL_KEYBOARD_PATH environment variable featuremasterkeyboard-path
LIBHANGUL_KEYBOARD_PATH 환경 변수를 설정하면 그 위치의 키보드 파일을 로딩하게 한다. 테스트할 때에는 시스템에 설치된 키보드 파일이 아니라 빌드 디렉토리의 키보드 파일을 사용해야 의미가 있다. 빌드 디렉토리의 키보드을 로딩할 수 있는 기능을 제공하기위해서 LIBHANGUL_KEYBOARD_PATH 환경 변수를 도입한다. 소스 디렉토리에는 키보드 파일 템플릿만 있다. 완성된 키보드 파일은 빌드 디렉토리에 생성되므로 빌드 디렉토리에서 키보드 파일을 로딩해야 한다. 그러나 거기에는 combination 파일이 없으므로 제대로된 테스트를 위해서는 combination 파일도 복사해주는 룰이 필요하다. AC_CONFIG_LINKS()를 사용하여 소스만 고치고도 테스트 가능하게 한다.
Diffstat (limited to 'test/hangul.c')
-rw-r--r--test/hangul.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/test/hangul.c b/test/hangul.c
index 797c14d..a019f06 100644
--- a/test/hangul.c
+++ b/test/hangul.c
@@ -68,6 +68,10 @@ main(int argc, char *argv[])
keyboard = argv[1];
}
+ char* keyboard_path = getenv("LIBHANGUL_KEYBOARD_PATH");
+ if (keyboard_path == NULL)
+ setenv("LIBHANGUL_KEYBOARD_PATH", TEST_LIBHANGUL_KEYBOARD_PATH, 1);
+
hangul_init();
hic = hangul_ic_new(keyboard);