Beispiel #1
0
    def test_message_status_was_up_now_down(self, MockFetcher):
        site = Website('https://example.com', 'this phrase not found')

        site.fetcher = MockFetcher()
        site.fetcher.fetch.return_value = (502, 'Nginx Error')

        site.new_observation('up')
        site.evaluate()
        self.assertEqual(site.message, 'https://example.com is down.')
Beispiel #2
0
    def test_message_when_no_observation_exists(self, MockFetcher):
        site = Website('https://example.com', 'example')

        site.fetcher = MockFetcher()
        site.fetcher.fetch.return_value = (200, 'An example')

        site.clean()
        site.evaluate()
        self.assertEqual(site.message, 'https://example.com is up.')
Beispiel #3
0
    def test_message_status_same_as_last_time(self, MockFetcher):
        site = Website('https://example.com', 'example')
        site.new_observation('up')

        site.fetcher = MockFetcher()
        site.fetcher.fetch.return_value = (200, 'This is an example')

        # This line would make a network call, but uses our mock instead
        site.evaluate()
        self.assertFalse(site.message, 'No Message expected')
Beispiel #4
0
    def test_message_status_was_down_now_up(self, MockFetcher):
        site = Website('https://example.com', 'example')

        site.fetcher = MockFetcher()
        site.fetcher.fetch.return_value = (200, 'An example')

        site.new_observation('down')
        site.evaluate()
        variations = [
            'https://example.com is up. Last down duration: 0 seconds.',
            'https://example.com is up. Last down duration: 1 seconds.'
        ]
        self.assertTrue(site.message in variations,
                        'Expected duration is either 0 or 1 second')