aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/test-dictionary-data/index.json6
-rw-r--r--test/test-dictionary-data/kanji_bank_1.json42
-rw-r--r--test/test-dictionary-data/kanji_meta_bank_1.json4
-rw-r--r--test/test-dictionary-data/tag_bank_1.json7
-rw-r--r--test/test-dictionary-data/tag_bank_2.json9
-rw-r--r--test/test-dictionary-data/term_bank_1.json34
-rw-r--r--test/test-dictionary-data/term_meta_bank_1.json5
-rw-r--r--test/yomichan-test.js26
8 files changed, 133 insertions, 0 deletions
diff --git a/test/test-dictionary-data/index.json b/test/test-dictionary-data/index.json
new file mode 100644
index 00000000..3034bf38
--- /dev/null
+++ b/test/test-dictionary-data/index.json
@@ -0,0 +1,6 @@
+{
+ "title": "Test Dictionary",
+ "format": 3,
+ "revision": "test",
+ "sequenced": true
+} \ No newline at end of file
diff --git a/test/test-dictionary-data/kanji_bank_1.json b/test/test-dictionary-data/kanji_bank_1.json
new file mode 100644
index 00000000..264f94c1
--- /dev/null
+++ b/test/test-dictionary-data/kanji_bank_1.json
@@ -0,0 +1,42 @@
+[
+ [
+ "打",
+ "ダ ダアス",
+ "う.つ う.ち- ぶ.つ",
+ "ktag1 ktag2",
+ [
+ "meaning1",
+ "meaning2",
+ "meaning3",
+ "meaning4",
+ "meaning5"
+ ],
+ {
+ "kstat1": "1",
+ "kstat2": "2",
+ "kstat3": "3",
+ "kstat4": "4",
+ "kstat5": "5"
+ }
+ ],
+ [
+ "込",
+ "",
+ "-こ.む こ.む こ.み -こ.み こ.める",
+ "ktag1 ktag2",
+ [
+ "meaning1",
+ "meaning2",
+ "meaning3",
+ "meaning4",
+ "meaning5"
+ ],
+ {
+ "kstat1": "1",
+ "kstat2": "2",
+ "kstat3": "3",
+ "kstat4": "4",
+ "kstat5": "5"
+ }
+ ]
+] \ No newline at end of file
diff --git a/test/test-dictionary-data/kanji_meta_bank_1.json b/test/test-dictionary-data/kanji_meta_bank_1.json
new file mode 100644
index 00000000..73e75b8a
--- /dev/null
+++ b/test/test-dictionary-data/kanji_meta_bank_1.json
@@ -0,0 +1,4 @@
+[
+ ["打", "freq", 1],
+ ["込", "freq", 2]
+] \ No newline at end of file
diff --git a/test/test-dictionary-data/tag_bank_1.json b/test/test-dictionary-data/tag_bank_1.json
new file mode 100644
index 00000000..109ad395
--- /dev/null
+++ b/test/test-dictionary-data/tag_bank_1.json
@@ -0,0 +1,7 @@
+[
+ ["tag1", "category1", 0, "tag1 notes", 0],
+ ["tag2", "category2", 0, "tag2 notes", 0],
+ ["tag3", "category3", 0, "tag3 notes", 0],
+ ["tag4", "category4", 0, "tag4 notes", 0],
+ ["tag5", "category5", 0, "tag5 notes", 0]
+] \ No newline at end of file
diff --git a/test/test-dictionary-data/tag_bank_2.json b/test/test-dictionary-data/tag_bank_2.json
new file mode 100644
index 00000000..5e7936b3
--- /dev/null
+++ b/test/test-dictionary-data/tag_bank_2.json
@@ -0,0 +1,9 @@
+[
+ ["ktag1", "kcategory1", 0, "ktag1 notes", 0],
+ ["ktag2", "kcategory2", 0, "ktag2 notes", 0],
+ ["kstat1", "kcategory3", 0, "kstat1 notes", 0],
+ ["kstat2", "kcategory4", 0, "kstat2 notes", 0],
+ ["kstat3", "kcategory5", 0, "kstat3 notes", 0],
+ ["kstat4", "kcategory6", 0, "kstat4 notes", 0],
+ ["kstat5", "kcategory7", 0, "kstat5 notes", 0]
+] \ No newline at end of file
diff --git a/test/test-dictionary-data/term_bank_1.json b/test/test-dictionary-data/term_bank_1.json
new file mode 100644
index 00000000..755d9f6a
--- /dev/null
+++ b/test/test-dictionary-data/term_bank_1.json
@@ -0,0 +1,34 @@
+[
+ ["打", "だ", "tag1 tag2", "", 2, ["definition1a (打, だ)", "definition1b (打, だ)"], 1, "tag3 tag4 tag5"],
+ ["打", "ダース", "tag1 tag2", "", 1, ["definition1a (打, ダース)", "definition1b (打, ダース)"], 2, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 3, ["definition1a (打つ, うつ)", "definition1b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 4, ["definition2a (打つ, うつ)", "definition2b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 5, ["definition3a (打つ, うつ)", "definition3b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 6, ["definition4a (打つ, うつ)", "definition4b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 7, ["definition5a (打つ, うつ)", "definition5b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 8, ["definition6a (打つ, うつ)", "definition6b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 9, ["definition7a (打つ, うつ)", "definition7b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 10, ["definition8a (打つ, うつ)", "definition8b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 11, ["definition9a (打つ, うつ)", "definition9b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 12, ["definition10a (打つ, うつ)", "definition10b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 13, ["definition11a (打つ, うつ)", "definition11b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 14, ["definition12a (打つ, うつ)", "definition12b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 15, ["definition13a (打つ, うつ)", "definition13b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 16, ["definition14a (打つ, うつ)", "definition14b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "うつ", "tag1 tag2", "v5", 17, ["definition15a (打つ, うつ)", "definition15b (打つ, うつ)"], 3, "tag3 tag4 tag5"],
+ ["打つ", "ぶつ", "tag1 tag2", "v5", 18, ["definition1a (打つ, ぶつ)", "definition1b (打つ, ぶつ)"], 4, "tag3 tag4 tag5"],
+ ["打つ", "ぶつ", "tag1 tag2", "v5", 19, ["definition2a (打つ, ぶつ)", "definition2b (打つ, ぶつ)"], 4, "tag3 tag4 tag5"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 20, ["definition1a (打ち込む, うちこむ)", "definition1b (打ち込む, うちこむ)"], 5, "tag3 tag4 tag5"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 21, ["definition2a (打ち込む, うちこむ)", "definition2b (打ち込む, うちこむ)"], 5, "tag5 tag6 tag7"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 22, ["definition3a (打ち込む, うちこむ)", "definition3b (打ち込む, うちこむ)"], 5, "tag5 tag6 tag7"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 23, ["definition4a (打ち込む, うちこむ)", "definition4b (打ち込む, うちこむ)"], 5, "tag5 tag6 tag7"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 24, ["definition5a (打ち込む, うちこむ)", "definition5b (打ち込む, うちこむ)"], 5, "tag5 tag6 tag7"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 25, ["definition6a (打ち込む, うちこむ)", "definition6b (打ち込む, うちこむ)"], 5, "tag5 tag6 tag7"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 26, ["definition7a (打ち込む, うちこむ)", "definition7b (打ち込む, うちこむ)"], 5, "tag5 tag6 tag7"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 27, ["definition8a (打ち込む, うちこむ)", "definition8b (打ち込む, うちこむ)"], 5, "tag5 tag6 tag7"],
+ ["打ち込む", "うちこむ", "tag1 tag2", "v5", 28, ["definition9a (打ち込む, うちこむ)", "definition9b (打ち込む, うちこむ)"], 5, "tag5 tag6 tag7"],
+ ["打ち込む", "ぶちこむ", "tag1 tag2", "v5", 29, ["definition1a (打ち込む, ぶちこむ)", "definition1b (打ち込む, ぶちこむ)"], 6, "tag3 tag4 tag5"],
+ ["打ち込む", "ぶちこむ", "tag1 tag2", "v5", 30, ["definition2a (打ち込む, ぶちこむ)", "definition2b (打ち込む, ぶちこむ)"], 6, "tag3 tag4 tag5"],
+ ["打ち込む", "ぶちこむ", "tag1 tag2", "v5", 31, ["definition3a (打ち込む, ぶちこむ)", "definition3b (打ち込む, ぶちこむ)"], 6, "tag3 tag4 tag5"],
+ ["打ち込む", "ぶちこむ", "tag1 tag2", "v5", 32, ["definition4a (打ち込む, ぶちこむ)", "definition4b (打ち込む, ぶちこむ)"], 6, "tag3 tag4 tag5"]
+] \ No newline at end of file
diff --git a/test/test-dictionary-data/term_meta_bank_1.json b/test/test-dictionary-data/term_meta_bank_1.json
new file mode 100644
index 00000000..78096502
--- /dev/null
+++ b/test/test-dictionary-data/term_meta_bank_1.json
@@ -0,0 +1,5 @@
+[
+ ["打", "freq", 1],
+ ["打つ", "freq", 2],
+ ["打ち込む", "freq", 3]
+] \ No newline at end of file
diff --git a/test/yomichan-test.js b/test/yomichan-test.js
index 602b8d78..dd4da919 100644
--- a/test/yomichan-test.js
+++ b/test/yomichan-test.js
@@ -26,8 +26,34 @@ function getJSZip() {
return JSZip;
}
+function createTestDictionaryArchive(dictionaryName) {
+ const fileNames = [
+ 'index.json',
+ 'tag_bank_1.json',
+ 'tag_bank_2.json',
+ 'term_bank_1.json',
+ 'kanji_bank_1.json',
+ 'term_meta_bank_1.json',
+ 'kanji_meta_bank_1.json'
+ ];
+
+ const archive = new (getJSZip())();
+
+ for (const fileName of fileNames) {
+ const source = fs.readFileSync(path.join(__dirname, 'test-dictionary-data', fileName), {encoding: 'utf8'});
+ const json = JSON.parse(source);
+ if (fileName === 'index.json' && typeof dictionaryName === 'string') {
+ json.title = dictionaryName;
+ }
+ archive.file(fileName, JSON.stringify(json, null, 0));
+ }
+
+ return archive;
+}
+
module.exports = {
requireScript,
+ createTestDictionaryArchive,
get JSZip() { return getJSZip(); }
};