def test_not_match(self): """test_not_match conditionに1つもマッチしないケースのテスト """ speaker = emotionspeaker.create() setting_json = """{ "speaker":"emotion", "conditions":[ { "emotion":{ "gt":0.7 }, "outputs":[ {"serif":"今日は元気そうですね!"} ] }, { "emotion":{ "lt":0.3 }, "outputs":[ {"serif":"今日は元気無いですね。"} ] } ] }""" result = speaker.speak({"emotion":0.4},json.loads(setting_json,"utf-8"),[]) self.assertEqual(len(result),0)
def test_multi_condition(self): """test_multi_condition 複数のconditionからマッチしたものを正しく返すテスト """ speaker = emotionspeaker.create() setting_json = """{ "speaker":"emotion", "conditions":[ { "emotion":{ "gt":0.7 }, "outputs":[ {"serif":"今日は元気そうですね!"} ] }, { "emotion":{ "lt":0.3 }, "outputs":[ {"serif":"今日は元気無いですね。"} ] } ] }""" result = speaker.speak({"emotion":0.2},json.loads(setting_json,"utf-8"),[]) self.assertEqual(len(result),1) self.assertTrue("serif" in result[0]) self.assertEqual(u"今日は元気無いですね。",result[0]["serif"]) print json.dumps(result,ensure_ascii=False)
def test_not_match(self): """test_not_match conditionに1つもマッチしないケースのテスト """ speaker = emotionspeaker.create() setting_json = """{ "speaker":"emotion", "conditions":[ { "emotion":{ "gt":0.7 }, "outputs":[ {"serif":"今日は元気そうですね!"} ] }, { "emotion":{ "lt":0.3 }, "outputs":[ {"serif":"今日は元気無いですね。"} ] } ] }""" result = speaker.speak({"emotion": 0.4}, json.loads(setting_json, "utf-8"), []) self.assertEqual(len(result), 0)
def test_multi_condition(self): """test_multi_condition 複数のconditionからマッチしたものを正しく返すテスト """ speaker = emotionspeaker.create() setting_json = """{ "speaker":"emotion", "conditions":[ { "emotion":{ "gt":0.7 }, "outputs":[ {"serif":"今日は元気そうですね!"} ] }, { "emotion":{ "lt":0.3 }, "outputs":[ {"serif":"今日は元気無いですね。"} ] } ] }""" result = speaker.speak({"emotion": 0.2}, json.loads(setting_json, "utf-8"), []) self.assertEqual(len(result), 1) self.assertTrue("serif" in result[0]) self.assertEqual(u"今日は元気無いですね。", result[0]["serif"]) print json.dumps(result, ensure_ascii=False)
def test_single_condition(self): """test_single_condition 1つだけ設定したconditionにマッチして正しいものを返すテスト """ speaker = emotionspeaker.create() setting_json = """{ "speaker":"emotion", "conditions":[{ "emotion":{ "gt":0.7 }, "outputs":[ {"serif":"今日は元気そうですね!"} ] }] }""" result = speaker.speak({"emotion": 0.8}, json.loads(setting_json, "utf-8"), []) self.assertEqual(len(result), 1) self.assertTrue("serif" in result[0]) self.assertEqual(u"今日は元気そうですね!", result[0]["serif"]) print json.dumps(result, ensure_ascii=False)
def test_else_match(self): """test_else_match 条件を指定しないデフォルトにマッチするテスト """ speaker = emotionspeaker.create() setting_json = """{ "speaker":"emotion", "conditions":[ { "emotion":{ "gt":0.7 }, "outputs":[ {"serif":"今日は元気そうですね!"} ] }, { "emotion":{ "lt":0.3 }, "outputs":[ {"serif":"今日は元気無いですね。"} ] }, { "outputs":[ {"serif":"いつも通りですね。"} ] } ] }""" result = speaker.speak({"emotion": 0.4}, json.loads(setting_json, "utf-8"), []) self.assertEqual(len(result), 1) self.assertTrue("serif" in result[0]) self.assertEqual(u"いつも通りですね。", result[0]["serif"]) print json.dumps(result, ensure_ascii=False)
def test_else_match(self): """test_else_match 条件を指定しないデフォルトにマッチするテスト """ speaker = emotionspeaker.create() setting_json = """{ "speaker":"emotion", "conditions":[ { "emotion":{ "gt":0.7 }, "outputs":[ {"serif":"今日は元気そうですね!"} ] }, { "emotion":{ "lt":0.3 }, "outputs":[ {"serif":"今日は元気無いですね。"} ] }, { "outputs":[ {"serif":"いつも通りですね。"} ] } ] }""" result = speaker.speak({"emotion":0.4},json.loads(setting_json,"utf-8"),[]) self.assertEqual(len(result),1) self.assertTrue("serif" in result[0]) self.assertEqual(u"いつも通りですね。",result[0]["serif"]) print json.dumps(result,ensure_ascii=False)
def test_single_condition(self): """test_single_condition 1つだけ設定したconditionにマッチして正しいものを返すテスト """ speaker = emotionspeaker.create() setting_json = """{ "speaker":"emotion", "conditions":[{ "emotion":{ "gt":0.7 }, "outputs":[ {"serif":"今日は元気そうですね!"} ] }] }""" result = speaker.speak({"emotion":0.8},json.loads(setting_json,"utf-8"),[]) self.assertEqual(len(result),1) self.assertTrue("serif" in result[0]) self.assertEqual(u"今日は元気そうですね!",result[0]["serif"]) print json.dumps(result,ensure_ascii=False)
def test_create(self): """test_create create関数でEmotionSpeakerのインスタンスを取得する """ speaker = emotionspeaker.create() self.assertIsInstance(speaker,emotionspeaker.EmotionSpeaker)
def test_create(self): """test_create create関数でEmotionSpeakerのインスタンスを取得する """ speaker = emotionspeaker.create() self.assertIsInstance(speaker, emotionspeaker.EmotionSpeaker)