def test_build(self): process = subprocess.Popen(['echo', 'test'], stdout=subprocess.PIPE) cmd_tokens = [] # pylint: disable=unused-argument def mock_popen(tokens, stdout): cmd_tokens.extend(tokens) return process # pylint: enable=unused-argument with self.swap(subprocess, 'Popen', mock_popen): deploy.build_scripts() self.assertEqual( cmd_tokens, ['python', '-m', 'scripts.build', '--prod_env'])
def test_build_failure(self): process = subprocess.Popen(['test'], stdout=subprocess.PIPE) process.return_code = 1 cmd_tokens = [] # pylint: disable=unused-argument def mock_popen(tokens, stdout): cmd_tokens.extend(tokens) return process # pylint: enable=unused-argument popen_swap = self.swap(subprocess, 'Popen', mock_popen) with popen_swap, self.assertRaisesRegexp(Exception, 'Build failed.'): deploy.build_scripts() self.assertEqual( cmd_tokens, ['python', '-m', 'scripts.build', '--prod_env'])
def test_build_with_maintenance_mode(self): process = subprocess.Popen(['echo', 'test'], stdout=subprocess.PIPE) cmd_tokens = [] def mock_popen(tokens, stdout): # pylint: disable=unused-argument cmd_tokens.extend(tokens) return process with self.swap(subprocess, 'Popen', mock_popen): deploy.build_scripts(True) self.assertEqual(cmd_tokens, [ 'python', '-m', 'scripts.build', '--prod_env', '--source_maps', '--deploy_mode', '--maintenance_mode' ])