Skip to content

Instantly share code, notes, and snippets.

@hideokamoto
Created November 2, 2017 07:38
Show Gist options
  • Save hideokamoto/77381c4f9cf427a576fb237e2dffe92e to your computer and use it in GitHub Desktop.
Save hideokamoto/77381c4f9cf427a576fb237e2dffe92e to your computer and use it in GitHub Desktop.
const Alexa = require('alexa-sdk');
// Define skill name
const SKILL_NAME = "Test Example";
// Define translation settings
const languageStrings = {
'en': {
'translation': {
'WELCOME' : "Welcome to Gloucester Guide!"
}
},
'de-DE': {
'translation': {
'WELCOME' : "Willkommen in Gloucester Guide!",
}
}
};
// Regist intent handlers
const handlers = {
'LaunchRequest': function () {
var say = this.t('WELCOME');
this.emit(':tellWithCard', say, 'Welcome', say)
},
};
exports.handler = function(event, context, callback) {
var alexa = Alexa.handler(event, context);
alexa.resources = languageStrings;
alexa.registerHandlers(handlers);
alexa.execute();
};
const assert = require('assert')
const event = require('./events/base')
const func = require('../src/index.js')
event.request = {
"type": "LaunchRequest",
"requestId": "request5678",
"locale": "en-US"
}
const { handler } = func
const callback = () => console.log()
describe('Test Alexa function', () => {
it('should be succeed', () => {
handler(event, {
succeed: (data) => {
assert.ok(true)
},
fail: (err) => {
assert.ok(false)
}
}, callback)
})
it('should be say english content', () => {
event.request.locale = "en-US"
handler(event, {
succeed: (data) => {
assert.ok(true)
const { response } = data
const {
card,
outputSpeech
} = response
assert.deepEqual(
outputSpeech,
{
type: 'SSML',
ssml: "<speak> Welcome to Gloucester Guide! </speak>"
}
)
assert.deepEqual(
card,
{
type: 'Simple',
title: "Welcome",
content: "Welcome to Gloucester Guide!"
}
)
},
fail: (err) => {
assert.ok(false)
}
}, callback)
})
it('should be say german content', () => {
event.request.locale = "de-DE"
handler(event, {
succeed: (data) => {
assert.ok(true)
const { response } = data
const {
card,
outputSpeech
} = response
assert.deepEqual(
outputSpeech,
{
type: 'SSML',
ssml: "<speak> Willkommen in Gloucester Guide! </speak>"
}
)
assert.deepEqual(
card,
{
type: 'Simple',
title: "Welcome",
content: "Willkommen in Gloucester Guide!"
}
)
},
fail: (err) => {
assert.ok(false)
}
}, callback)
})
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment