From 11d2b933be3f775fe1723a4a60452635b0aa6cfd Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Fri, 22 Dec 2023 07:52:33 -0500 Subject: Dictionary data tests + write mode (#415) * Rename test * Refactor * Create new dictionary-data.test.js * Move utility functions * Remove old tests * Slight refactor * Add command to rebuild test data * Clarify name * Don't expect in write mode * Ignore config file --- test/dictionary.test.js | 65 ------------------------------------------------- 1 file changed, 65 deletions(-) delete mode 100644 test/dictionary.test.js (limited to 'test/dictionary.test.js') diff --git a/test/dictionary.test.js b/test/dictionary.test.js deleted file mode 100644 index e516bd8e..00000000 --- a/test/dictionary.test.js +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (C) 2023 Yomitan Authors - * Copyright (C) 2020-2022 Yomichan Authors - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -import {fileURLToPath} from 'node:url'; -import path from 'path'; -import {expect, test} from 'vitest'; -import * as dictionaryValidate from '../dev/dictionary-validate.js'; -import {createDictionaryArchive} from '../dev/util.js'; - -const dirname = path.dirname(fileURLToPath(import.meta.url)); - -/** - * @param {string} dictionary - * @param {string} [dictionaryName] - * @returns {import('jszip')} - */ -function createTestDictionaryArchive(dictionary, dictionaryName) { - const dictionaryDirectory = path.join(dirname, 'data', 'dictionaries', dictionary); - return createDictionaryArchive(dictionaryDirectory, dictionaryName); -} - - -/** */ -async function main() { - const dictionaries = [ - {name: 'valid-dictionary1', valid: true}, - {name: 'invalid-dictionary1', valid: false}, - {name: 'invalid-dictionary2', valid: false}, - {name: 'invalid-dictionary3', valid: false}, - {name: 'invalid-dictionary4', valid: false}, - {name: 'invalid-dictionary5', valid: false}, - {name: 'invalid-dictionary6', valid: false} - ]; - - const schemas = dictionaryValidate.getSchemas(); - - for (const {name, valid} of dictionaries) { - test(`${name} is ${valid ? 'valid' : 'invalid'}`, async () => { - const archive = createTestDictionaryArchive(name); - - if (valid) { - await expect(dictionaryValidate.validateDictionary(null, archive, schemas)).resolves.not.toThrow(); - } else { - await expect(dictionaryValidate.validateDictionary(null, archive, schemas)).rejects.toThrow(); - } - }); - } -} - -await main(); -- cgit v1.2.3