diff options
author | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2020-02-22 13:40:57 -0500 |
---|---|---|
committer | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2020-02-22 13:40:57 -0500 |
commit | a2b72dd3ab4a560d4549aa52912fcb9cd9f275ab (patch) | |
tree | e7e77fca7b151c1f9a17ab5a1314589a5578dd28 | |
parent | 12e0923b63492c8ba5ca949d5ce0f3ad8aeb01d0 (diff) |
Update test-dictionary
-rw-r--r-- | test/test-dictionary.js | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/test/test-dictionary.js b/test/test-dictionary.js index b9885edc..b157dd5d 100644 --- a/test/test-dictionary.js +++ b/test/test-dictionary.js @@ -3,9 +3,38 @@ const dictionaryValidate = require('./dictionary-validate'); async function main() { - const archive = yomichanTest.createTestDictionaryArchive('valid-dictionary1'); + 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(); - await dictionaryValidate.validateDictionary(archive, schemas); + + for (const {name, valid} of dictionaries) { + const archive = yomichanTest.createTestDictionaryArchive(name); + + let error = null; + try { + await dictionaryValidate.validateDictionary(archive, schemas); + } catch (e) { + error = e; + } + + if (valid) { + if (error !== null) { + throw error; + } + } else { + if (error === null) { + throw new Error(`Expected dictionary ${name} to be invalid`); + } + } + } } |