+++ /dev/null
-from gnome import gconf
-from wifi_assistant.daemon import Daemon
-from wifi_assistant.settings.NetworkSetting import NetworkSetting
-
-import unittest
-from pie import *
-
-url_to_open = 'http://wifi-assistant.garage.maemo.org'
-default_browser_name = "default"
-default_browser_options = {'url':url_to_open}
-default_settings = NetworkSetting()
-default_settings.setNameOfBrowserToLaunch(default_browser_name)
-default_settings.setBrowserOptions(default_browser_options)
-ssid = 'A Network Name'
-settings_without_options = NetworkSetting()
-settings_without_options.setNetworkName(ssid)
-settings_without_options.setLaunchingOfBrowserEnabled(True)
-
-class DaemonTest(unittest.TestCase):
-
- def replayMocks(self):
- self.application_settings.replay()
- self.launcher.replay()
- self.network_settings.replay()
-
- def setUp(self):
- self.launcher = Mock()
- self.application_settings = Mock()
- self.network_settings = Mock()
- self.parent_window = None
-
- def createTesteeWithPopupClickingYes(self):
- given(self.application_settings).getUsePopup().willReturn(True)
- self.testee = Daemon(self.launcher, self.application_settings, self.network_settings, self.parent_window)
-
- def yes(*args, **kwargs):
- return True
- self.testee.showDecisionDialog = yes
-
- def createTesteeWithPopupClickingNo(self):
- given(self.application_settings).getUsePopup().willReturn(True)
- self.testee = Daemon(self.launcher, self.application_settings, self.network_settings, self.parent_window)
-
- def no(*args, **kwargs):
- return False
- self.testee.showDecisionDialog = no
-
- def test_withANewNetwork_whenUserClicksYes_browserIsLaunched(self):
- # GIVEN
- self.createTesteeWithPopupClickingYes()
- given(self.network_settings).get(ssid).willReturn(None)
- given(self.network_settings).getDefaultSettings().willReturn(default_settings)
-
- # WHEN
- self.replayMocks()
- self.testee.connectionEstablished(ssid)
-
- # THEN
- verify(self.network_settings).getDefaultSettings()
- verify(self.launcher).launchBrowser(default_browser_name, default_browser_options)
-
- def test_withANewNetwork_whenUserClicksNo_browserIsNotLaunched(self):
- self.createTesteeWithPopupClickingNo()
- given(self.network_settings).get(ssid).willReturn(None)
-
- # WHEN
- self.replayMocks()
- self.testee.connectionEstablished(ssid)
-
- # THEN
- verify(self.launcher, never()).launchBrowser(default_browser_name, default_browser_options)
-
- def test_popupIsNotOpenedIfPopupIsDisabledInApplicationSettings(self):
- given(self.application_settings).getUsePopup().willReturn(False)
- self.testee = Daemon(self.launcher, self.application_settings, self.network_settings, self.parent_window)
-
- self.replayMocks()
- self.testee.connectionEstablished(ssid)
-
- verify(self.launcher, never()).launchBrowser()
- verify(self.network_settings, never()).get(ssid)
-
- def test_knownSsidWithLaunchSetToTrueUsesDefaultBrowserAndUrl(self):
- given(self.network_settings).get(ssid).willReturn(settings_without_options)
- given(self.network_settings).getDefaultSettings().willReturn(default_settings)
- given(self.application_settings).getUsePopup().willReturn(True)
- self.testee = Daemon(self.launcher, self.application_settings, self.network_settings, self.parent_window)
-
- self.replayMocks()
- self.testee.connectionEstablished(ssid)
-
- verify(self.launcher, never()).launchBrowser(default_browser_name, default_browser_options)
-
-
-if __name__ == '__main__':
- unittest.main()
-