{"id":21032259,"url":"https://github.com/daisukeark/alexa-conversation-model-assert","last_synced_at":"2025-05-15T13:30:57.522Z","repository":{"id":57175660,"uuid":"132260632","full_name":"daisukeArk/alexa-conversation-model-assert","owner":"daisukeArk","description":"Test framework for Amazon Alexa Skills Kit SDK v2 for Node.js","archived":false,"fork":false,"pushed_at":"2018-05-21T12:28:48.000Z","size":29,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-26T13:04:26.246Z","etag":null,"topics":["alexa","alexa-skills-kit","javascript","node-js","test-framework","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/daisukeArk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-05-05T15:32:27.000Z","updated_at":"2019-06-12T10:05:37.000Z","dependencies_parsed_at":"2022-09-03T23:31:10.348Z","dependency_job_id":null,"html_url":"https://github.com/daisukeArk/alexa-conversation-model-assert","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daisukeArk%2Falexa-conversation-model-assert","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daisukeArk%2Falexa-conversation-model-assert/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daisukeArk%2Falexa-conversation-model-assert/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daisukeArk%2Falexa-conversation-model-assert/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daisukeArk","download_url":"https://codeload.github.com/daisukeArk/alexa-conversation-model-assert/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254349249,"owners_count":22056306,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alexa","alexa-skills-kit","javascript","node-js","test-framework","typescript"],"created_at":"2024-11-19T12:41:52.005Z","updated_at":"2025-05-15T13:30:57.190Z","avatar_url":"https://github.com/daisukeArk.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Test framework for Amazon Alexa Skills Kit SDK v2 for Node.js\n\nASK SDK for Node.jsの Version 2 のテストフレームワークです。\n\n## Install\n\n```bash\nnpm install --save-dev alexa-conversation-model-assert\n```\n\n## Samples\n\n```typescript\nimport * as Conversation from 'alexa-conversation-model-assert';\nimport { handler } from './skills/hello-world/index';\n\nconst condition: Conversation.IConversationCondition = {\n  handler: handler,\n  skillId: 'xxxxx',\n  request: {\n    locale: 'en-US'\n  },\n  testDescription: 'hello-world'\n};\n\nConversation.init(condition)\n  // インテントリクエスト\n  .requestIntent('LaunchRequest')\n  // インテントリクエスト結果のプレーンテキスト完全一致\n  .equalPlain({\n    speech: 'Welcome to the Alexa Skills Kit, you can say hello!',\n    reprompt: 'Welcome to the Alexa Skills Kit, you can say hello!'\n  })\n  .requestIntent('AMAZON.HelpIntent')\n  .equalPlain({\n    speech: 'You can say hello to me!',\n    reprompt: 'You can say hello to me!'\n  })\n  .requestIntent('AMAZON.StopIntent')\n  .equalPlain({\n    speech: 'Goodbye!'\n  })\n  // 停止インテントリクエストのSSMLテキスト完全一致\n  .equalSsml({\n    speech: '\u003cspeak\u003eGoodbye!\u003c/speak\u003e'\n  })\n  .end();\n\nConversation.init(condition)\n  // インテントリクエスト\n  .requestIntent('LaunchRequest')\n  .requestIntent('HelloWorldIntent')\n  // HelloWorldIntent speech, cardTitle, cardContentの検証\n  .equalPlain({\n    speech: 'Hello World!',\n    cardTitle: 'Hello World',\n    cardContent: 'Hello World!'\n  })\n  .end();\n\nConversation.init(condition)\n  .requestIntent('LaunchRequest')\n  // インテント呼出時のスロット値定義\n  .requestIntent('RecipeIntent', {\n    request: {\n      intent: {\n        slots: {\n          Item: {\n            name: 'Item',\n            value: 'slot value',\n            confirmationStatus: 'CONFIRMED'\n          }\n        }\n      }\n    }\n  })\n  .end();\n```\n\n## Conversation Assert\n\n種類 | 概要 |\n:-- | :-- |\nequalPlain(expected: IOutputSpeech) | プレーンテキストが完全一致することを検証します。\nequalSsml(expected: IOutputSpeech) | SSMLが完全一致することを検証します。\nnotEqualPlain(expected: IOutputSpeech) | プレーンテキストが完全一致しないことを検証します。\nnotEqualSsml(expected: IOutputSpeech) | SSMLが完全一致しないことを検証します。\ncontainsPlain(expected: IOutputSpeech) | プレーンテキストが部分一致することを検証します。\ncontainsSsml(expected: IOutputSpeech) | SSMLが部分一致することを検証します。\nmatchesPlain(expected: IOutputSpeech) | プレーンテキストが正規表現と一致することを検証します。\nmatchesSsml(expected: IOutputSpeech) | SSMLが正規表現と一致することを検証します。\ndoesNotMatchPlain(expected: IOutputSpeech) | プレーンテキストが正規表現と一致しないことを検証します。\ndoesNotMatchSsml(expected: IOutputSpeech) | SSMLが正規表現と一致しないことを検証します。\nstartsWithPlain(expected: IOutputSpeech) | プレーンテキストが前方一致することを検証します。\nstartsWithSsml(expected: IOutputSpeech) | SSMLが前方一致することを検証します。\nendsWithPlain(expected: IOutputSpeech) | プレーンテキストが後方一致することを検証します。\nendsWithSsml(expected: IOutputSpeech) | SSMLが後方一致することを検証します。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaisukeark%2Falexa-conversation-model-assert","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaisukeark%2Falexa-conversation-model-assert","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaisukeark%2Falexa-conversation-model-assert/lists"}