def test_runforever_doesnt_act_if_status_is_expected(self): statuses = [200, 201] for status in statuses: response = DummyResponse() response.status = status # expected prog = self._makeOnePopulated(programs=["foo"], statuses=statuses, response=response) prog.stdin.write("eventname:TICK len:0\n") prog.stdin.seek(0) prog.runforever(test=True) # status is expected so there should be no output self.assertEqual("", prog.stderr.getvalue())
def test_runforever_acts_if_status_is_unexpected(self): statuses = [200, 201] response = DummyResponse() response.status = 500 # unexpected response.reason = "Internal Server Error" prog = self._makeOnePopulated(programs=["foo"], statuses=[statuses], response=response) prog.stdin.write("eventname:TICK len:0\n") prog.stdin.seek(0) prog.runforever(test=True) lines = prog.stderr.getvalue().split("\n") self.assertTrue("Subject: httpok: http://foo/bar: " "bad status returned" in lines) self.assertTrue("status contacting http://foo/bar: " "500 Internal Server Error" in lines)
def test_runforever_doesnt_act_if_status_is_expected(self): statuses = [200, 201] for status in statuses: response = DummyResponse() response.status = status # expected prog = self._makeOnePopulated( programs=['foo'], statuses=statuses, response=response, ) prog.stdin.write('eventname:TICK len:0\n') prog.stdin.seek(0) prog.runforever(test=True) # status is expected so there should be no output self.assertEqual('', prog.stderr.getvalue())
def test_runforever_acts_if_status_is_unexpected(self): statuses = [200, 201] response = DummyResponse() response.status = 500 # unexpected response.reason = 'Internal Server Error' prog = self._makeOnePopulated( programs=['foo'], statuses=[statuses], response=response, ) prog.stdin.write('eventname:TICK len:0\n') prog.stdin.seek(0) prog.runforever(test=True) lines = prog.stderr.getvalue().split('\n') self.assertTrue('Subject: httpok: http://foo/bar: ' 'bad status returned' in lines) self.assertTrue('status contacting http://foo/bar: ' '500 Internal Server Error' in lines)