def test_httpLogin_should_call_fetchPage_with_proper_redirect_url(self): sys.modules["__main__"].core._findErrors.return_value = False dom_values = [ "", "", "", "", "", "", "", ["'someURL'"], "", "", "" ] sys.modules["__main__"].core._fetchPage.return_value = { "content": "somePage", "status": 200, "location": "here" } sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules[ "__main__"].common.parseDOM.side_effect = lambda x="", y="", attrs={ }, ret="": dom_values.pop() login = YouTubeLogin() login._fillLoginInfo = Mock() login._fillLoginInfo.return_value = ("some_galx_value", { "some_key": "some_value" }) result = login._httpLogin({"new": "true"}) assert (sys.modules["__main__"].core._fetchPage.call_count == 2) sys.modules["__main__"].core._fetchPage.assert_called_with({ 'referer': 'here', 'link': 'someURL', 'no-language-cookie': 'true' })
def test_fillLoginInfo_should_return_login_info_if_all_values_are_found( self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules[ "__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].common.parseDOM.side_effect = [[ "uilel", "dsh", "rmShown", "GALX" ], ["value2"], ["value2"], ["value2"], ["value2"]] sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" sys.modules["__main__"].common.makeAscii.return_value = "value2" login = YouTubeLogin() (galx, url_data) = login._fillLoginInfo({ "content": "new", "new_url": "url" }) assert (galx == "value2") assert (url_data["uilel"] == "value2") assert (url_data["dsh"] == "value2") assert (url_data["rmShown"] == "value2") assert (url_data["GALX"] == "value2") assert (url_data["Passwd"] == "value1") assert (url_data["Email"] == "value1")
def test_fillLoginInfo_should_use_parseDOM(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules["__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].common.parseDOM.return_value = "" login = YouTubeLogin() result = login._fillLoginInfo("new") assert(sys.modules["__main__"].common.parseDOM.call_count > 0)
def test_fillLoginInfo_should_use_parseDOM(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules["__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].common.parseDOM.side_effect = [["smsToken", "GALX"], ["value2"], ["value2"]] login = YouTubeLogin() result = login._fillLoginInfo({"content": "new", "new_url": "url"}) assert(sys.modules["__main__"].common.parseDOM.call_count > 0)
def test_fillLoginInfo_should_use_parseDOM(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules["__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].common.parseDOM.side_effect = [["smsToken", "GALX"], ["value2"], ["value2"]] login = YouTubeLogin() result = login._fillLoginInfo({"content": "new", "new_url": "url"}) assert(sys.modules["__main__"].common.parseDOM.call_count > 0)
def test_fillLoginInfo_should_use_parseDOM(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules[ "__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].common.parseDOM.return_value = "" login = YouTubeLogin() result = login._fillLoginInfo("new") assert (sys.modules["__main__"].common.parseDOM.call_count > 0)
def test_fillLoginInfo_should_ask_user_for_password_if_not_set(self): sys.modules["__main__"].pluginsettings.userName.return_value = "" sys.modules["__main__"].pluginsettings.userPassword.return_value = "" sys.modules["__main__"].common.parseDOM.side_effect = [["GALX"], [""]] sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" login = YouTubeLogin() result = login._fillLoginInfo({"content": "new", "new_url": "url"}) sys.modules["__main__"].common.getUserInput.assert_any_call('someTitle', hidden=True)
def test_fillLoginInfo_should_ask_user_for_password_if_not_set(self): sys.modules["__main__"].pluginsettings.userName.return_value = "" sys.modules["__main__"].pluginsettings.userPassword.return_value = "" sys.modules["__main__"].common.parseDOM.side_effect = [["GALX"], [""]] sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" login = YouTubeLogin() result = login._fillLoginInfo({"content": "new", "new_url": "url"}) sys.modules["__main__"].common.getUserInput.assert_any_call('someTitle', hidden=True)
def test_fillLoginInfo_should_get_username_and_passwords_from_pluginsettings(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules["__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = [["GALX"], [""]] login = YouTubeLogin() result = login._fillLoginInfo({"content": "new", "new_url": "url"}) sys.modules["__main__"].pluginsettings.userName.assert_any_call() sys.modules["__main__"].pluginsettings.userPassword.assert_any_call()
def test_fillLoginInfo_should_get_username_and_passwords_from_pluginsettings(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules["__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.return_value = "" login = YouTubeLogin() result = login._fillLoginInfo("new") sys.modules["__main__"].pluginsettings.userName.assert_any_call() sys.modules["__main__"].pluginsettings.userPassword.assert_any_call()
def test_fillLoginInfo_should_not_return_login_info_if_values_are_missing(self): sys.modules["__main__"].pluginsettings.userName.return_value = "" sys.modules["__main__"].pluginsettings.userPassword.return_value = "" sys.modules["__main__"].common.parseDOM.return_value = "" sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" login = YouTubeLogin() (galx, url_data) = login._fillLoginInfo("new") assert(galx == "") assert(url_data == {})
def test_fillLoginInfo_should_get_username_and_passwords_from_pluginsettings(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules["__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = [["GALX"], [""]] login = YouTubeLogin() result = login._fillLoginInfo({"content": "new", "new_url": "url"}) sys.modules["__main__"].pluginsettings.userName.assert_any_call() sys.modules["__main__"].pluginsettings.userPassword.assert_any_call()
def test_httpLogin_should_call_fillLoginInfo_if_login_form_present(self): sys.modules["__main__"].core._findErrors.return_value = False dom_values = ["","","","","","","","",["someURL"],"", ""] sys.modules["__main__"].core._fetchPage.return_value = {"content":"somePage","status":200} sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = lambda x = "",y = "",attrs = {},ret = "": dom_values.pop() login = YouTubeLogin() login._fillLoginInfo = Mock() login._fillLoginInfo.return_value = ("",{}) result = login._httpLogin({"new":"true"}) login._fillLoginInfo.assert_called_with({'content': 'somePage', 'status': 200})
def test_fillLoginInfo_should_not_return_login_info_if_values_are_missing( self): sys.modules["__main__"].pluginsettings.userName.return_value = "" sys.modules["__main__"].pluginsettings.userPassword.return_value = "" sys.modules["__main__"].common.parseDOM.return_value = "" sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" login = YouTubeLogin() (galx, url_data) = login._fillLoginInfo("new") assert (galx == "") assert (url_data == {})
def test_httpLogin_should_call_fillLoginInfo_if_login_form_present(self): sys.modules["__main__"].core._findErrors.return_value = False dom_values = ["","","","","","","","",["someURL"],"", ""] sys.modules["__main__"].core._fetchPage.return_value = {"content":"somePage","status":200} sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = lambda x = "",y = "",attrs = {},ret = "": dom_values.pop() login = YouTubeLogin() login._fillLoginInfo = Mock() login._fillLoginInfo.return_value = ("",{}) result = login._httpLogin({"new":"true"}) login._fillLoginInfo.assert_called_with({'content': 'somePage', 'status': 200})
def test_fillLoginInfo_should_get_username_and_passwords_from_pluginsettings( self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules[ "__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.return_value = "" login = YouTubeLogin() result = login._fillLoginInfo("new") sys.modules["__main__"].pluginsettings.userName.assert_any_call() sys.modules["__main__"].pluginsettings.userPassword.assert_any_call()
def test_fillLoginInfo_should_not_return_login_info_if_values_are_missing(self): sys.modules["__main__"].pluginsettings.userName.return_value = "" sys.modules["__main__"].pluginsettings.userPassword.return_value = "" sys.modules["__main__"].common.parseDOM.side_effect = [["GALX"], [""]] sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" login = YouTubeLogin() (galx, url_data) = login._fillLoginInfo({"content": "new", "new_url": "url"}) print(repr(url_data)) assert(galx == "") assert(url_data == {'Passwd': 'somePword', 'GALX': '', 'Email': ''})
def test_httpLogin_should_call_fetchPage_with_proper_redirect_url(self): sys.modules["__main__"].core._findErrors.return_value = False dom_values = ["","","","","","","",["'someURL'"],"","", ""] sys.modules["__main__"].core._fetchPage.return_value = {"content":"somePage","status":200, "location": "here"} sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = lambda x = "",y = "",attrs = {},ret = "": dom_values.pop() login = YouTubeLogin() login._fillLoginInfo = Mock() login._fillLoginInfo.return_value = ("some_galx_value",{"some_key":"some_value"}) result = login._httpLogin({"new":"true"}) assert(sys.modules["__main__"].core._fetchPage.call_count == 2) sys.modules["__main__"].core._fetchPage.assert_called_with({'referer': 'here', 'link': 'someURL'})
def test_fillLoginInfo_should_not_return_login_info_if_values_are_missing(self): sys.modules["__main__"].pluginsettings.userName.return_value = "" sys.modules["__main__"].pluginsettings.userPassword.return_value = "" sys.modules["__main__"].common.parseDOM.side_effect = [["GALX"], [""]] sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" sys.modules["__main__"].common.makeAscii.return_value = "" login = YouTubeLogin() (galx, url_data) = login._fillLoginInfo({"content": "new", "new_url": "url"}) print(repr(url_data)) assert(galx == "") assert(url_data == {'Passwd': 'somePword', 'GALX': '', 'Email': ''})
def test_httpLogin_should_call_fetchPage_with_proper_fetch_options_if_fillLoginInfo_succeded(self): sys.modules["__main__"].core._findErrors.return_value = False dom_values = ["","","","","","","","",["someURL"],"", ""] sys.modules["__main__"].core._fetchPage.return_value = {"content":"somePage","status":200, "location": "here"} sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = lambda x = "",y = "",attrs = {},ret = "": dom_values.pop() login = YouTubeLogin() login._fillLoginInfo = Mock() login._fillLoginInfo.return_value = ("some_galx_value",{"some_key":"some_value"}) result = login._httpLogin({"new":"true"}) login._fillLoginInfo.assert_called_with("somePage") assert(sys.modules["__main__"].core._fetchPage.call_count == 2) sys.modules["__main__"].core._fetchPage.assert_called_with({'no-language-cookie': 'true', 'url_data': {'some_key': 'some_value'}, 'referer': 'here', 'link': 'someURL', 'hidden': 'true'})
def test_httpLogin_should_call_fetchPage_with_proper_fetch_options_if_fillLoginInfo_succeded(self): sys.modules["__main__"].core._findErrors.return_value = False dom_values = ["","","","","","","","",["someURL"],"", ""] sys.modules["__main__"].core._fetchPage.return_value = {"content":"somePage","status":200, "location": "here"} sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = lambda x = "",y = "",attrs = {},ret = "": dom_values.pop() login = YouTubeLogin() login._fillLoginInfo = Mock() login._fillLoginInfo.return_value = ("some_galx_value",{"some_key":"some_value"}) result = login._httpLogin({"new":"true"}) login._fillLoginInfo.assert_called_with({'content': 'somePage', 'status': 200, 'location': 'here'}) assert(sys.modules["__main__"].core._fetchPage.call_count == 2) sys.modules["__main__"].core._fetchPage.assert_called_with({'url_data': {'some_key': 'some_value'}, 'referer': 'here', 'link': 'someURL', 'hidden': 'true'})
def test_fillLoginInfo_should_return_login_info_if_all_values_are_found(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules["__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].common.parseDOM.return_value = ["value2"] sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" login = YouTubeLogin() (galx, url_data) = login._fillLoginInfo("new") assert(galx == "value2") assert(url_data["uilel"] == "value2") assert(url_data["dsh"] == "value2") assert(url_data["rmShown"] == "value2") assert(url_data["GALX"] == "value2") assert(url_data["Passwd"] == "value1") assert(url_data["Email"] == "value1")
def test_fillLoginInfo_should_return_login_info_if_all_values_are_found(self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules["__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].common.parseDOM.side_effect = [["uilel", "dsh", "rmShown", "GALX"], ["value2"], ["value2"], ["value2"], ["value2"]] sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" sys.modules["__main__"].common.makeAscii.return_value = "value2" login = YouTubeLogin() (galx, url_data) = login._fillLoginInfo({"content": "new", "new_url": "url"}) assert(galx == "value2") assert(url_data["uilel"] == "value2") assert(url_data["dsh"] == "value2") assert(url_data["rmShown"] == "value2") assert(url_data["GALX"] == "value2") assert(url_data["Passwd"] == "value1") assert(url_data["Email"] == "value1")
def test_httpLogin_should_call_fetchPage_with_correct_fetch_options_if_smsToken_is_found(self): sys.modules["__main__"].core._findErrors.return_value = False dom_values = ["USERNAME", ["some cont"], ["some smsToken"], "", "", "", "", ["galx"], "", ""] login_values = [("",""), ("some_galx", "some_url_data")] sys.modules["__main__"].core._fetchPage.return_value = {"content":"","status":200, "location": "here"} sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = lambda x = "",y = "",attrs = {},ret = "": dom_values.pop() login = YouTubeLogin() login._fillLoginInfo = Mock() login._fillLoginInfo.side_effect = lambda x: login_values.pop() result = login._httpLogin({"new":"true"}) print sys.modules["__main__"].core._fetchPage.call_count assert(sys.modules["__main__"].core._fetchPage.call_count == 3) print repr(sys.modules["__main__"].core._fetchPage.call_args_list) sys.modules["__main__"].core._fetchPage.assert_called_with({'referer': 'here', 'link': 'some cont', 'url_data': {'service': 'youtube', 'GALX': 'some_galx', 'PersistentCookie': 'yes', 'smsToken': 'some smsToken'}})
def test_httpLogin_should_call_fetchPage_with_correct_fetch_options_if_smsToken_is_found(self): sys.modules["__main__"].core._findErrors.return_value = False dom_values = ["USERNAME", ["some cont"], ["some smsToken"], "", "", "", "", ["galx"], "", ""] login_values = [("",""), ("some_galx", "some_url_data")] sys.modules["__main__"].core._fetchPage.return_value = {"content":"","status":200, "location": "here"} sys.modules["__main__"].settings.getSetting.return_value = "smokey" sys.modules["__main__"].common.parseDOM.side_effect = lambda x = "",y = "",attrs = {},ret = "": dom_values.pop() login = YouTubeLogin() login._fillLoginInfo = Mock() login._fillLoginInfo.side_effect = lambda x: login_values.pop() result = login._httpLogin({"new":"true"}) print sys.modules["__main__"].core._fetchPage.call_count assert(sys.modules["__main__"].core._fetchPage.call_count == 3) print repr(sys.modules["__main__"].core._fetchPage.call_args_list) sys.modules["__main__"].core._fetchPage.assert_called_with({'referer': 'here', 'link': 'some cont', 'url_data': {'service': 'youtube', 'GALX': 'some_galx', 'PersistentCookie': 'yes', 'smsToken': 'some smsToken'}})
def test_fillLoginInfo_should_return_login_info_if_all_values_are_found( self): sys.modules["__main__"].pluginsettings.userName.return_value = "value1" sys.modules[ "__main__"].pluginsettings.userPassword.return_value = "value1" sys.modules["__main__"].common.parseDOM.return_value = ["value2"] sys.modules["__main__"].language.return_value = "someTitle" sys.modules["__main__"].common.getUserInput.return_value = "somePword" login = YouTubeLogin() (galx, url_data) = login._fillLoginInfo("new") assert (galx == "value2") assert (url_data["uilel"] == "value2") assert (url_data["dsh"] == "value2") assert (url_data["rmShown"] == "value2") assert (url_data["GALX"] == "value2") assert (url_data["Passwd"] == "value1") assert (url_data["Email"] == "value1")