forked from w-m/pinyin-conversion
-
Notifications
You must be signed in to change notification settings - Fork 0
/
PinyinConversionTest.m
49 lines (37 loc) · 2.14 KB
/
PinyinConversionTest.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
//
// PinyinConversionTest.m
//
// Created by Wieland Morgenstern on 15.11.12.
//
//
#import "PinyinConversionTest.h"
#import "PinyinConversion.h"
@implementation PinyinConversionTest
- (void)testNoChange {
STAssertEqualObjects(@"ma", [PinyinConversion convertPinyin:@"ma"], @"Should not change when there's no tone.");
STAssertEqualObjects(@"ma ma hu hu", [PinyinConversion convertPinyin:@"ma ma hu hu"], @"Should not change when there's no tone.");
STAssertEqualObjects(@"mā", [PinyinConversion convertPinyin:@"mā"], @"Should not change already converted pinyin.");
STAssertEqualObjects(@"má", [PinyinConversion convertPinyin:@"má"], @"Should not change already converted pinyin.");
STAssertEqualObjects(@"mǎ", [PinyinConversion convertPinyin:@"mǎ"], @"Should not change already converted pinyin.");
STAssertEqualObjects(@"mà", [PinyinConversion convertPinyin:@"mà"], @"Should not change already converted pinyin.");
STAssertEqualObjects(@"pi4an", [PinyinConversion convertPinyin:@"pi4an"], @"Strings that contain numbers but are invalid pinyin string should not change");
}
- (void)testA {
STAssertEqualObjects(@"mā", [PinyinConversion convertPinyin:@"ma1"], @"Converting first tone");
STAssertEqualObjects(@"má", [PinyinConversion convertPinyin:@"ma2"], @"Converting second tone");
STAssertEqualObjects(@"mǎ", [PinyinConversion convertPinyin:@"ma3"], @"Converting third tone");
STAssertEqualObjects(@"mà", [PinyinConversion convertPinyin:@"ma4"], @"Converting fourth tone");
STAssertEqualObjects(@"ma", [PinyinConversion convertPinyin:@"ma5"], @"Converting fifth tone");
}
- (void)testNiHao {
STAssertEqualObjects(@"nǐ hǎo", [PinyinConversion convertPinyin:@"ni3 hao3"], @"Hello!");
}
- (void)testPunctuationMarks {
STAssertEqualObjects(@"piàn;", [PinyinConversion convertPinyin:@"pian4;"], @"Converting with a punctuation mark after the word");
}
- (void)testMultipleWords {
STAssertEqualObjects(@"dòng huà piàn dòng huà piān",
[PinyinConversion convertPinyin:@"dong4 hua4 pian4 dong4 hua4 pian1"],
@"Converting multiple words at once");
}
@end