def test_createMentionListMyself(self): # 返信制御クラスの作成 rt = ReplyTweet() # メンション取得をモック self.mocker.StubOutWithMock(rt, "getMentions") # 再現を初期化 self.mocker.ResetAll() rt.getMentions().AndReturn([ \ (300, u'test3', u'message3'), \ (200, u'ToruBot', u'message2'), \ (100, u'test1', u'message1') \ ]) # 再現を開始 self.mocker.ReplayAll() lst = rt.createMentionList() assert_equal((300, u'test3', u'message3'), lst[0]) assert_equal((100, u'test1', u'message1'), lst[1]) # 再現を検証 self.mocker.VerifyAll()
def test_createMentionListRT(self): # 返信制御クラスの作成 rt = ReplyTweet() # メンション取得をモック self.mocker.StubOutWithMock(rt, "getMentions") # 再現を初期化 self.mocker.ResetAll() rt.getMentions().AndReturn([ \ (300, u'test3', u'message3'), \ (200, u'test2', u'message2 RT RTMessage!'), \ (201, u'test4', u'よかった。RT @ToruBot: @riskrisk 大丈夫だ問題ない。 (そろそろ@torubotの件でひっぱたかれる予感があるが大丈夫か?)'), \ (100, u'test1', u'message1') \ ]) # 再現を開始 self.mocker.ReplayAll() lst = rt.createMentionList() assert_equal((300, u'test3', u'message3'), lst[0]) assert_equal((200, u'test2', u'message2'), lst[1]) assert_equal((201, u'test4', u'よかった。'), lst[2]) assert_equal((100, u'test1', u'message1'), lst[3]) # 再現を検証 self.mocker.VerifyAll()
def test_createMentionListCheckId(self): # 返信制御クラスの作成 rt = ReplyTweet() # チェック済みIDに200を設定 ds = DataStore.DataStore() ds.setMentionId(200) # メンション取得をモック self.mocker.StubOutWithMock(rt, "getMentions") # 再現を初期化 self.mocker.ResetAll() rt.getMentions().AndReturn([ \ (300, u'test3', u'message3'), \ (200, u'test2', u'message2'), \ (100, u'test1', u'message1') \ ]) # 再現を開始 self.mocker.ReplayAll() lst = rt.createMentionList() assert_equal((300, u'test3', u'message3'), lst[0]) # 再現を検証 self.mocker.VerifyAll()
def test_MentionReplyHandler(self): # 返信制御クラスの作成 rt = ReplyTweet() mlist =[\ (100, u'user1', u'1ハンドラ'), \ (200, u'user2', u'2ハンドラ'), \ (300, u'user3', u'3ハンドラ') \ ] # 各エントリをモック self.mocker.StubOutWithMock(rt, "createMentionList") self.mocker.StubOutWithMock(rt, "iyahoTweet") self.mocker.StubOutWithMock(rt, "uhyouTweet") self.mocker.StubOutWithMock(rt, "peroperoTweet") self.mocker.StubOutWithMock(rt, "douiTweet") self.mocker.StubOutWithMock(rt, "enochTweet") self.mocker.StubOutWithMock(rt, "omikujiTweet") self.mocker.StubOutWithMock(rt, "omikujiAdd") # 再現を初期化 self.mocker.ResetAll() # 動作を記録 rt.createMentionList().AndReturn(mlist) rt.iyahoTweet(mlist) rt.uhyouTweet(mlist) rt.peroperoTweet(mlist) rt.douiTweet(mlist) rt.enochTweet(mlist) rt.omikujiTweet(mlist) rt.omikujiAdd(mlist) # 再現を開始 self.mocker.ReplayAll() rt.mentionReplyHandler() # 再現を検証 self.mocker.VerifyAll()