def test_default_configuration(self):
        self.browser.open(self.config_url)
        config = INotifierConfigurationSchema(self.portal)

        self.assertFalse(config.enabled)
        self.assertFalse(self.browser.getControl(name='form.enabled').value)

        self.assertFalse(config.detailed_report)
        self.assertFalse(self.browser.getControl(
                name='form.detailed_report').value)

        self.assertEqual(config.interval, 'daily')
        self.assertEqual(self.browser.getControl(name='form.interval').value,
                         ['daily'])

        self.assertEqual(config.get_receivers(), [])
        self.assertEqual(self.browser.getControl(name='form.receivers').value,
                         '')
    def test_change_configuration(self):
        self.browser.open(self.config_url)
        self.browser.getControl(name='form.enabled').value = True
        self.browser.getControl(name='form.detailed_report').value = True
        self.browser.getControl(name='form.interval').value = ('weekly',)
        self.browser.getControl(name='form.receivers').value = '\n'.join((
            '*****@*****.**',
            '*****@*****.**'))

        self.browser.getControl('Save').click()
        self.assertEqual(self.browser.url, self.config_url)
        self.assertIn('Updated on', self.browser.contents)

        config = INotifierConfigurationSchema(self.portal)
        self.assertTrue(config.enabled)
        self.assertTrue(config.detailed_report)
        self.assertEqual(config.interval, 'weekly')
        self.assertEqual(config.get_receivers(), [
                '*****@*****.**', '*****@*****.**'])