Created
December 3, 2014 10:59
-
-
Save wookay/88fb3ad5a6300af768ab to your computer and use it in GitHub Desktop.
test_hangul.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// test_hangul.swift | |
// Hangul | |
// | |
// Created by WooKyoung Noh on 12/1/2014. | |
// Copyright (c) 2014 factorcat. All rights reserved. | |
// | |
@objc(TestHangul) | |
class TestHangul : NSObject { | |
func test_hangul() { | |
assert_equal(1, 1) | |
assert_equal("ㄱ", 한글(초: "ㄱ", 중: "ㅡ", 종: "ㄹ").초) | |
var 글: 한글 = 한글(초: "ㄱ", 중: "ㅡ", 종: "ㄹ") | |
글.초 = "ㅇ" | |
assert_equal(글, 한글(초: "ㅇ", 중: "ㅡ", 종: "ㄹ")) | |
} | |
func test_오토마타_영어() { | |
var a = 오토마타(방식: .알파벳) | |
a.입력("a") | |
a.입력("b") | |
assert_equal("ab", a.텍스트) | |
a.백스페이스() | |
assert_equal("a", a.텍스트) | |
} | |
func test_글자_출력() { | |
var 빈글 = 한글(초: "", 중: "", 종: "") | |
assert_equal("", 빈글.출력) | |
var ㄱ = 한글(초: "ㄱ", 중: "", 종: "") | |
assert_equal("ㄱ", ㄱ.출력) | |
var ㅏ = 한글(초: "", 중: "ㅏ", 종: "") | |
assert_equal("ㅏ", ㅏ.출력) | |
var 가 = 한글(초: "ㄱ", 중: "ㅏ", 종: "") | |
assert_equal("가", 가.출력) | |
var ㅁ받침 = 한글(초: "", 중: "", 종: "ㅁ") | |
assert_equal("", ㅁ받침.출력) | |
var ㅏㅁ받침 = 한글(초: "", 중: "ㅏ", 종: "ㅁ") | |
assert_equal("ㅏ", ㅏㅁ받침.출력) | |
var 감 = 한글(초: "ㄱ", 중: "ㅏ", 종: "ㅁ") | |
assert_equal("감", 감.출력) | |
} | |
func test_오토마타_거듭닿소리() { | |
var aㄱㅅ = 오토마타(방식: .한글) | |
aㄱㅅ.입력(초성("ㄱ")) | |
aㄱㅅ.입력(초성("ㅅ")) | |
assert_equal("ㄱㅅ", aㄱㅅ.텍스트) | |
} | |
func test_오토마타_거듭홀소리() { | |
var aㅗㅜ = 오토마타(방식: .한글) | |
aㅗㅜ.입력(중성("ㅗ")) | |
aㅗㅜ.입력(중성("ㅜ")) | |
assert_equal("ㅗㅜ", aㅗㅜ.텍스트) | |
} | |
func test_오토마타_겹받침() { | |
var aㅂㄱ = 오토마타(방식: .한글) | |
aㅂㄱ.입력(종성("ㅂ")) | |
assert_equal("", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(종성("ㄱ")) | |
assert_equal("", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(초성("ㅆ")) | |
assert_equal("ㅆ", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(중성("ㅜ")) | |
assert_equal("쑥", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(초성("ㅊ")) | |
assert_equal("쑥ㅊ", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(중성("ㅏ")) | |
assert_equal("쑥차", aㅂㄱ.텍스트) | |
} | |
func test_오토마타_겹받침_백스페이스() { | |
var aㅂㄱ = 오토마타(방식: .한글) | |
aㅂㄱ.입력(종성("ㅂ")) | |
assert_equal("", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(종성("ㄱ")) | |
assert_equal("", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(초성("ㅆ")) | |
assert_equal("ㅆ", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(중성("ㅜ")) | |
assert_equal("쑥", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(초성("ㅊ")) | |
assert_equal("쑥ㅊ", aㅂㄱ.텍스트) | |
aㅂㄱ.입력(중성("ㅏ")) | |
assert_equal("쑥차", aㅂㄱ.텍스트) | |
aㅂㄱ.백스페이스() | |
assert_equal("쑥ㅊ", aㅂㄱ.텍스트) | |
aㅂㄱ.백스페이스() | |
assert_equal("쑥", aㅂㄱ.텍스트) | |
aㅂㄱ.백스페이스() | |
assert_equal("", aㅂㄱ.텍스트) | |
aㅂㄱ.백스페이스() | |
assert_equal("", aㅂㄱ.텍스트) | |
} | |
func test_키맵핑() { | |
assert_equal(종성("ㅇ"), 키맵("a", .세벌식390) as 자모) | |
assert_equal(종성("ㅆ"), 키맵("2", .세벌식390) as 자모) | |
assert_not_equal(종성("ㄺ"), 키맵("@", 키보드종류.세벌식390) as 자모) | |
assert_equal(종성("ㄺ"), 키맵("@", 키보드종류.세벌식391) as 자모) | |
} | |
func test_오토마타_세벌식() { | |
var a가 = 오토마타(방식: .한글) | |
a가.입력(초성("ㄱ")) | |
assert_equal("ㄱ", a가.텍스트) | |
a가.입력(중성("ㅏ")) | |
assert_equal("가", a가.텍스트) | |
var aㄲ = 오토마타(방식: .한글) | |
aㄲ.입력(초성("ㄱ")) | |
assert_equal("ㄱ", aㄲ.텍스트) | |
aㄲ.입력(초성("ㄱ")) | |
assert_equal("ㄲ", aㄲ.텍스트) | |
var a값 = 오토마타(방식: .한글) | |
a값.입력(초성("ㄱ")) | |
a값.입력(중성("ㅏ")) | |
a값.입력(종성("ㅂ")) | |
a값.입력(종성("ㅅ")) | |
assert_equal("값", a값.텍스트) | |
var a봐 = 오토마타(방식: .한글) | |
a봐.입력(초성("ㅂ")) | |
a봐.입력(중성("ㅗ")) | |
a봐.입력(중성("ㅏ")) | |
assert_equal("봐", a봐.텍스트) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Started
........................................
Finished in 0.0359 seconds.
9 tests, 40 assertions, 0 failures, 0 errors