def _test__execute_url(self, direct): url = "http://some.url.com/bla" os_api.urlopen(url).and_return(BytesIO(make_bytes(self._DEPLOYMENT_SCRIPT))) self.forge.replay() if direct: self.env.execute_deployment_file_url(url) else: self.env.execute_deployment_file(url) self.assertSuccess()
def test__execute_once(self, is_url, same_arg, same_content): if is_url: arg = "http://a" os_api.urlopen(arg).and_return(BytesIO(make_bytes(self._DEPLOYMENT_SCRIPT))) if not same_arg: os_api.urlopen(arg + 'x').and_return(BytesIO(make_bytes(self._DEPLOYMENT_SCRIPT if same_content else self._DEPLOYMENT_SCRIPT + ' '))) else: arg = os.path.join(mkdtemp(), "file.py") with open(arg, "w") as outfile: outfile.write(self._DEPLOYMENT_SCRIPT) if not same_arg: with open(arg + 'x', "w") as outfile: outfile.write(self._DEPLOYMENT_SCRIPT if same_content else self._DEPLOYMENT_SCRIPT + ' ') self.forge.replay() self.env.execute_deployment_file_once(arg) self.assertSuccess() self.__success__ = False self.env.execute_deployment_file_once(arg if same_arg else arg + 'x') if same_content or same_arg: self.assertFalse(self.__success__) else: self.assertTrue(self.__success__)