[aquaskk-changes 365] CVS update: AquaSKK/src/test

Back to archive index

t-suw****@users***** t-suw****@users*****
2007年 9月 9日 (日) 11:59:49 JST


Index: AquaSKK/src/test/Makefile
diff -u AquaSKK/src/test/Makefile:1.1.2.2 AquaSKK/src/test/Makefile:1.1.2.3
--- AquaSKK/src/test/Makefile:1.1.2.2	Sat Sep  8 22:35:19 2007
+++ AquaSKK/src/test/Makefile	Sun Sep  9 11:59:49 2007
@@ -5,7 +5,7 @@
 VPATH	= $(shell find .. -type d -a ! -name CVS -a ! -name test -a ! -name ..) ../..
 CXXFLAGS= -g $(foreach dir,$(VPATH),-I$(dir))
 
-TARGET	= SKKKeymapEntry_TEST SKKKeymap_TEST SKKRomanKanaConverter_TEST
+TARGET	= SKKKeymapEntry_TEST SKKKeymap_TEST SKKRuleTreeNode_TEST SKKRomanKanaConverter_TEST 
 
 define BUILD_template
 $(1): $(1).o
@@ -33,4 +33,6 @@
 
 SKKKeymapEntry_TEST.o: SKKKeymapEntry_TEST.cpp SKKKeymapEntry.cpp SKKKeymapEntry.h
 SKKKeymap_TEST.o: SKKKeymap_TEST.cpp SKKKeymapEntry.cpp SKKKeymapEntry.h SKKKeymap.cpp SKKKeymap.h
-SKKRomanKanaConverter_TEST.o: SKKRomanKanaConverter_TEST.cpp SKKRomanKanaConverter.h SKKRomanKanaConverter.cpp
+SKKRuleTreeNode_TEST.o: SKKRuleTreeNode_TEST.cpp SKKRuleTreeNode.h SKKRuleTreeNode.cpp
+SKKRomanKanaConverter_TEST.o: SKKRomanKanaConverter_TEST.cpp SKKRomanKanaConverter.h SKKRomanKanaConverter.cpp \
+	SKKRuleTreeNode.h SKKRuleTreeNode.cpp
Index: AquaSKK/src/test/SKKRomanKanaConverter_TEST.cpp
diff -u AquaSKK/src/test/SKKRomanKanaConverter_TEST.cpp:1.1.2.1 AquaSKK/src/test/SKKRomanKanaConverter_TEST.cpp:1.1.2.2
--- AquaSKK/src/test/SKKRomanKanaConverter_TEST.cpp:1.1.2.1	Sat Sep  8 22:35:19 2007
+++ AquaSKK/src/test/SKKRomanKanaConverter_TEST.cpp	Sun Sep  9 11:59:49 2007
@@ -1,4 +1,5 @@
 #include "SKKRomanKanaConverter.cpp"
+#include "SKKRuleTreeNode.cpp"
 #include "jconv.cpp"
 
 int main() {
Index: AquaSKK/src/test/SKKRuleTreeNode_TEST.cpp
diff -u /dev/null AquaSKK/src/test/SKKRuleTreeNode_TEST.cpp:1.1.2.1
--- /dev/null	Sun Sep  9 11:59:49 2007
+++ AquaSKK/src/test/SKKRuleTreeNode_TEST.cpp	Sun Sep  9 11:59:49 2007
@@ -0,0 +1,44 @@
+#include "SKKRuleTreeNode.cpp"
+
+int main() {
+    SKKRuleTreeNode root;
+    const SKKRuleTreeNode* node;
+    int state;
+
+    node = root.Traverse("a", state);
+    assert(state == -1 && !node);
+
+    root.Add("a", SKKRuleTreeNode("あ", "ア", "ア", ""));
+    root.Add("kya", SKKRuleTreeNode("きゃ", "キャ", "キャ", ""));
+    root.Add("ka",  SKKRuleTreeNode("か", "カ", "カ", ""));
+    root.Add("n", SKKRuleTreeNode("ん", "ン", "ン", ""));
+    root.Add("nn", SKKRuleTreeNode("ん", "ン", "ン", ""));
+    root.Add("xx", SKKRuleTreeNode("っ", "ッ", "ッ", "x"));
+
+    node = root.Traverse("m", state);
+    assert(state == -1 && !node);
+
+    node = root.Traverse("a", state);
+    assert(state == 1 && node && node->KanaString(SKK::Hirakana) == "あ");
+
+    node = root.Traverse("kya", state);
+    assert(state == 3 && node && node->KanaString(SKK::Katakana) == "キャ");
+
+    node = root.Traverse("ki", state);
+    assert(state == 1 && !node);
+
+    node = root.Traverse("ky", state);
+    assert(state == 0 && !node);
+
+    node = root.Traverse("n", state);
+    assert(state == 0 && !node);
+
+    node = root.Traverse("ng", state);
+    assert(state == 1 && node && node->KanaString(SKK::Jisx0201Kana) == "ン");
+
+    node = root.Traverse("nn", state);
+    assert(state == 2 && node && node->KanaString(SKK::Jisx0201Kana) == "ン");
+
+    node = root.Traverse("xx", state);
+    assert(state == 2 && node && node->NextState() == "x");
+}


aquaskk-changes メーリングリストの案内
Back to archive index