def test_MainHandler(self): # 周期ツイート制御のインスタンスを生成 ct = CycleTweet(datetime.datetime(2012, 5, 6, 0, 0)) # 各ハンドラをモックする self.mocker.StubOutWithMock(ct, "scheduleHandler") self.mocker.StubOutWithMock(ct, "cycleHandler") self.mocker.StubOutWithMock(ct, "anniversaryHandler") # 記録をリセット self.mocker.ResetAll() # 呼び出しの記録 ct.scheduleHandler() ct.cycleHandler() ct.anniversaryHandler() # 再現動作の開始 self.mocker.ReplayAll() # ツイート ct.handler() # 実動作の検証 self.mocker.VerifyAll()
def test_AnniversaryHandler(self): # 周期ツイート制御のインスタンスを生成 ct = CycleTweet(datetime.datetime(2012, 2, 13, 0, 30)) # tweepyAPIのモックを作成 apiMock = self.mocker.CreateMock(tweepy.API) # モックをテスト対象に設定 ct.api = apiMock # 記録をリセット self.mocker.ResetAll() # 呼び出しの記録 apiMock.update_status(u'ねころび『4周年』記念だぜ!イイイイヤッホオオオゥゥゥ!!!(1/12)') apiMock.update_status(u'ねころび『5周年』記念だぜ!イイイイヤッホオオオゥゥゥ!!!(6/12)') apiMock.update_status(u'ねころび『6周年』記念だぜ!イイイイヤッホオオオゥゥゥ!!!(12/12)') # 再現動作の開始 self.mocker.ReplayAll() # 記念日制御のハンドラ呼び出し ct.ct = datetime.datetime(2012, 2, 13, 0, 30) ct.anniversaryHandler() # 記念日制御のハンドラ呼び出し ct.ct = datetime.datetime(2013, 2, 13, 10, 30) ct.anniversaryHandler() # 記念日制御のハンドラ呼び出し ct.ct = datetime.datetime(2014, 2, 13, 22, 30) ct.anniversaryHandler() # 実動作の検証 self.mocker.VerifyAll()