From 423622daaae0fb6e2bb9a21ea2280640ab2b00a4 Mon Sep 17 00:00:00 2001 From: Eric Rosenbaum Date: Thu, 7 Mar 2019 16:33:20 -0500 Subject: [PATCH] Add unit tests --- test/unit/extension_text_to_speech.js | 30 +++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 test/unit/extension_text_to_speech.js diff --git a/test/unit/extension_text_to_speech.js b/test/unit/extension_text_to_speech.js new file mode 100644 index 00000000..64061844 --- /dev/null +++ b/test/unit/extension_text_to_speech.js @@ -0,0 +1,30 @@ +const test = require('tap').test; +const TextToSpeech = require('../../src/extensions/scratch3_text2speech/index.js'); + +const fakeStage = { + textToSpeechLanguage: null +}; + +const fakeRuntime = { + getTargetForStage: () => fakeStage, + on: () => {} // Stub out listener methods used in constructor. +}; + +const ext = new TextToSpeech(fakeRuntime); + +test('if no language is saved in the project, use default', t => { + t.strictEqual(ext.getCurrentLanguage(), 'en'); + t.end(); +}); + +test('if an unsupported language is dropped onto the set language block, use default', t => { + ext.setLanguage({LANGUAGE: 'nope'}); + t.strictEqual(ext.getCurrentLanguage(), 'en'); + t.end(); +}); + +test('get the extension locale for a supported locale that differs', t => { + ext.setCurrentLanguage('ja-Hira'); + t.strictEqual(ext.getCurrentLanguage(), 'ja'); + t.end(); +});